当用户连接或重新连接到远程桌面时,Horizon Client 会收集有关客户端系统的信息,然后连接服务器会将这些信息发送到远程桌面。

Horizon Agent 会将客户端计算机信息写入在单用户计算机上部署的远程桌面的系统注册表路径 HKCU\Volatile Environment。对于在 RDS 会话中部署的远程桌面,Horizon Agent 会将客户端计算机信息写入系统注册表路径 HKCU\Volatile Environment\x,其中 x 是 RDS 主机上的会话 ID。

如果 Horizon Client 在远程桌面会话内运行,它会将物理客户端信息发送到远程桌面,而非发送虚拟机信息。例如,如果用户从其客户端系统连接到远程桌面,在远程桌面中启动 Horizon Client,然后连接到其他远程桌面,则会将物理客户端系统的 IP 地址发送到第二个远程桌面。此功能称作嵌套模式或双跃点方案。Horizon Client 发送 ViewClient_Nested_Passthrough(设置为 1)以及客户端系统信息,以表明它发送的是嵌套模式信息。

注: 客户端系统信息会在初始协议连接时传递到第二个跃点桌面。如果第一个跃点协议连接断开后重新连接,则也会更新客户端系统信息。

您可以向 Horizon AgentCommandsToRunOnConnectCommandsToRunOnReconnectCommandsToRunOnDisconnect 组策略设置中添加命令,以便当用户连接和重新连接到桌面时,运行从系统注册表中读取此信息的命令或命令脚本。请参阅在 Horizon 桌面上运行命令了解更多信息。

客户端系统信息介绍了包含客户端系统信息的注册表项,并列出了支持这些注册表项的桌面和客户端系统类型。如果支持嵌套模式列显示“是”,则表明将物理客户端信息(而非虚拟机信息)发送到第二个跃点桌面。

表 1. 客户端系统信息
注册表项 描述 支持嵌套模式 支持的桌面 支持的客户端系统
ViewClient_IP_Address 客户端系统的 IP 地址。 VDI(单用户计算机)

RDS

Windows、Linux、Mac、Android、iOS
ViewClient_MAC_Address 客户端系统的 MAC 地址。 VDI(单用户计算机)

RDS

Windows、Linux、Mac、Android
ViewClient_Machine_Name 客户端系统的计算机名。 VDI(单用户计算机)

RDS

Windows、Linux、Mac、Android、iOS
ViewClient_Machine_Domain 客户端系统的域。 VDI(单用户计算机)

RDS

Windows
ViewClient_LoggedOn_Username 用于登录客户端系统的用户名。 VDI(单用户计算机)

RDS

Windows、Linux、Mac
ViewClient_LoggedOn_Domainname 用于登录客户端系统的域名。 VDI(单用户计算机)

RDS

Windows

对于 Linux 和 Mac 客户端,请参阅 ViewClient_Machine_Domain。Linux 或 Mac 客户端没有提供 .ViewClient_LoggedOn_Domainname,因为 Linux 和 Mac 帐户未绑定到 Windows 域。

ViewClient_Type 客户端系统的瘦客户端名或操作系统类型。 VDI(单用户计算机)

RDS

Windows、Linux、Mac、Android、iOS
ViewClient_Broker_DNS_Name 连接服务器实例的 DNS 名称。 VDI(单用户计算机)

RDS

值直接从连接服务器发出,而不由 Horizon Client 收集。
ViewClient_Broker_URL 连接服务器实例的 URL。 VDI(单用户计算机)

RDS

值直接从连接服务器发出,而不由 Horizon Client 收集。
ViewClient_Broker_Tunneled 连接服务器实例安全加密链路连接的状态,可以是 true(启用)或 false(禁用)。 VDI(单用户计算机)

RDS

值直接从连接服务器发出,而不由 Horizon Client 收集。
ViewClient_Broker_Tunnel_URL 连接服务器安全加密链路连接的 URL(如果启用了安全加密链路连接)。 VDI(单用户计算机)

RDS

值直接从连接服务器发出,而不由 Horizon Client 收集。
ViewClient_Broker_Remote_IP_Address 连接服务器实例所查看到的客户端系统的 IP 地址。 VDI(单用户计算机)

RDS

值直接从连接服务器发出,而不由 Horizon Client 收集。
ViewClient_Broker_Request_Path 所有 IP 地址,从连接服务器实例识别的客户端系统的公共 IP 地址开始。 VDI(单用户计算机)

RDS

值直接从连接服务器发出,而不由 Horizon Client 收集。
ViewClient_TZID Olson 时区 ID。

要禁用时区同步,请启用 Horizon Agent Disable Time Zone Synchronization 组策略设置。

VDI(单用户计算机)

RDS

Windows、Linux、Mac、Android、iOS
ViewClient_Windows_Timezone GMT 标准时间。

要禁用时区同步,请启用 Horizon Agent Disable Time Zone Synchronization 组策略设置。

VDI(单用户计算机)

RDS

Windows

ViewClient_Broker_DomainName 用于向连接服务器进行身份验证的域名。 VDI(单用户计算机)

RDS

值直接从连接服务器发出,而不由 Horizon Client 收集。
ViewClient_Broker_UserName 用于向连接服务器进行身份验证的用户名。 VDI(单用户计算机)

RDS

值直接从连接服务器发出,而不由 Horizon Client 收集。
ViewClient_Client_ID 指定用作许可证密钥链接的 Unique Client HardwareId VDI(单用户计算机)

RDS

Windows、Linux、Mac、Android、iOS
ViewClient_Displays.Number 指定客户端上使用的监视器的数量。 VDI(单用户计算机)

RDS

Windows、Linux、Mac、Android、iOS
ViewClient_Displays.Topology 指定客户端上显示器的排列方式、分辨率和尺寸。 VDI(单用户计算机)

RDS

Windows、Linux、Mac、Android、iOS
ViewClient_Keyboard.Type 指定客户端上正在使用的键盘的类型。例如:日语和韩语键盘。 VDI(单用户计算机)

RDS

Windows
ViewClient_Launch_SessionType 指定会话类型。该类型可以是桌面或应用程序。 VDI(单用户计算机)

RDS

值直接从连接服务器发出,而不由 Horizon Client 收集。
ViewClient_Mouse.Identifier 指定鼠标的类型。 VDI(单用户计算机)

RDS

Windows
ViewClient_Mouse.NumButtons 指定鼠标支持的按键数量。 VDI(单用户计算机)

RDS

Windows
ViewClient_Mouse.SampleRate 指定对 PS/2 鼠标的输入进行采样的速率(单位为每秒报告数)。 VDI(单用户计算机)

RDS

Windows
ViewClient_Protocol 指定正在使用的协议。 VDI(单用户计算机)

RDS

Windows、Linux、Mac、Android、iOS
ViewClient_Language 指定操作系统的语言。 VDI(单用户计算机)

RDS

Windows、Linux、Mac、Android、iOS
ViewClient_Launch_Matched_Tags 指定一个或多个标记。 VDI(单用户计算机)

RDS

Windows、Linux、Mac、Android、iOS
ViewClient_Launch_ID 指定桌面或应用程序池的唯一 ID。 VDI(单用户计算机)

RDS

Windows、Linux、Mac、Android、iOS
ViewClient_Broker_Farm_ID 指定 RDS 主机上桌面或应用程序池的场 ID。 RDS Windows、Linux、Mac、Android、iOS
注: 客户端系统信息中的 ViewClient_LoggedOn_UsernameViewClient_LoggedOn_Domainname 的定义针对的是适用于 Windows 的 Horizon Client