![根据 RDP 客户端操作系统应用组策略](https://linux22.com/image/660633/%E6%A0%B9%E6%8D%AE%20RDP%20%E5%AE%A2%E6%88%B7%E7%AB%AF%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E7%BB%84%E7%AD%96%E7%95%A5.png)
我创建了一个组策略来更改默认 shell,以便手持 PC 可以通过 RDP 连接到终端服务器并让 lob 应用程序信息亭。这工作得很好,但有时需要与同一用户进行 RDP 并获得对 Windows Shell 的访问权限。实际上,我需要禁用该策略,执行该工作然后重新启用它。这非常烦人,特别是如果支持任务分配给没有域管理员权限的人。手持 PC 使用 Android 或 WinCE,而支持登录始终来自 Windows 7/8 客户端,因此,从理论上讲,仅在 Android/CE 客户端上应用该策略就足够了。我考虑过 WMI 过滤器,但我真的不知道如何查询 Android 或 WinCE 系统。而且,他们通过 RDP 访问,因此,从 GPO 的角度来看,机器是终端服务器,而不是客户端。实际上,我通过 powershell 脚本启动应用程序(当用户退出应用程序时自动注销),因此,从 powershell 检查 RDP 客户端的方法也不错,但我还没有找到。有什么想法吗?
答案1
您可以使用桂皮(或更好,Shay Levi 的 Powershell 模块 PSTerminalServices)。
假设它们使用不同的版本,当您在终端服务器上查询会话时,您可以检索 RDP 客户端版本。
此外,我认为没有办法用 WMI 来过滤它,除非你创建一个新的类或类似的东西。