アプリケーションがローカルではなくXenDesktopセッションで実行されているかどうかを調べたいと考えています。Citrix XenDesktopセッションの検出
を我々は現在、「API for Determining if App is Running on Citrix or Terminal Services」にヘルゲ・クラインが言及した解決策に類似のCitrix XenAppのセッションを検出するためのコードを持っている:ここでは私がこれまでに発見したものです。
悲しいことに、XenDesktop環境のその解決策は、WTSClientProtocolType
の0
を返しています。これは、ローカルコンソールセッションを意味します。
同じ質問に対する回答として、Josh Weatherlyがsessionname環境変数のチェックに言及しました。
ただし、XenDesktop環境でのecho %sessionname%
のコンソールチェックで「コンソール」が返されます。
「Detect citrix “application mode”?」からジョンSiblyは、リモートセッション(特にないCitrix社)を検出するためのソリューションを提案した:
GetSystemMetrics(SM_REMOTESESSION)
、また、ローカルセッションであることを意味する0を返します。
誰もが、それはXenDesktopセッションであることを検出する方法を知っていますか?あなたが見ることができる限り、セッションはローカルコンソールセッションであるという返事を返しています。
私はXenDesktop Express 5.5を使用しており、Citrix Receiver Web Plug-Inを使用してデスクトップにアクセスしています。
応答Donalに感謝します。最終的には、Citrixデスクトップサービス(WorkstationAgent)のProticaServiceの提案と同様の簡単なチェックを行いました。 – WillEllis