加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

vb.net – 用于确定应用程序是否在Citrix或终端服务上运行的API

发布时间:2020-12-17 00:14:03 所属栏目:大数据 来源:网络整理
导读:我正在寻找一个API /函数,我可以调用它来确定软件是在Citrix,终端服务还是独立PC上运行.最理想的是,它可以像这样工作: Select Case APIWhatSystem.Type.ToString Case "Citrix" bCitrix = True Case "TS" bTerminalServices = True Case "PC" bPC = TrueEnd
我正在寻找一个API /函数,我可以调用它来确定软件是在Citrix,终端服务还是独立PC上运行.最理想的是,它可以像这样工作:
Select Case APIWhatSystem.Type.ToString
   Case "Citrix"
      bCitrix = True
   Case "TS"
      bTerminalServices = True
   Case "PC"
      bPC = True
End Select

我更喜欢从API调用起作用的东西,而不是在注册表中查看某些内容,因为我们有越来越多的客户正在锁定注册表.

谢谢.

根据: http://forums.citrix.com/message.jspa?messageID=1363711,您可以检查SESSIONNAME环境变量.

Another simpler way is to read the system environment variable “SESSIONNAME”. If it exists and starts with “ICA” then you’re running within a Citrix session. If it starts with “RDP” then you’re running within an RDP session.

我用我的电脑和我在本地测试了它:

C:&;echo %SESSIONNAME%
Console

虽然远程我得到了

C:&;echo %SESSIONNAME%
RDP-tcp1

所以看起来这可能是一个简单的路径,否则听起来像检查注册表值或者如果某些dll存在将是下一个最好的事情.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读