我在XenApp服务器上运行c#.NET应用程序作为登录/注销脚本。应用程序将在用户上下文中运行,我需要能够检索(客户端)citrix接收器版本号以及客户端操作系统和机器名称。
我对Citrix API相当新,他们似乎没有很好的文档 - 那里的任何人都知道如何实现这一目标?
答案 0 :(得分:1)
我在XenApp服务器上的Windows注册表中找到了citrix接收器版本号:
HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\Ica\Session\{SESSION_NUMBER}\Connection
其中{SESSION_NUMBER}可在
中找到HKEY_USERS\{SID_NUMBER}\Software\Citrix\SessionSfr
作为该密钥中唯一的子密钥,其中{SID_NUMBER}是登录XenApp会话的用户的SID。
答案 1 :(得分:0)
如果有人感兴趣,我花了整个周末围绕Citrix CCM SDK编写.NET包装程序,并将代码发布在GitHub上:CcmSdk.Net
该项目目前的目标是.NET Standard 2.1
,因为我需要新的UTF-8封送处理功能,而该功能在旧版本中不可用。如果需要.NET Framework支持,则只需将代码复制到.NET Framework 4.7+项目中,然后使用该版本即可。
Citrix Workspace分隔了Citrix Receiver,我认为这里提到的注册表方法无法找出Citrix Workspace的客户端版本,但是它对我仍然非常有帮助,因为我们的许多客户端仍在使用旧的Citrix接收者。