When a user connects or reconnects to a remote desktop, Horizon Client gathers information about the client system and Connection Server sends that information to the remote desktop.
Horizon Agent writes the client computer information to the system registry path HKCU\Volatile Environment on remote desktops that are deployed on single-user machines. For remote desktops that are deployed in RDS sessions, Horizon Agent writes the client computer information to the system registry path HKCU\Volatile Environment\x, where x is the session ID, on the RDS host.
If Horizon Client is running inside of a remote desktop session, it sends the physical client information instead of the virtual machine information to the remote desktop. For example, if a user connects from their client system to a remote desktop, launches Horizon Client inside the remote desktop and connects to another remote desktop, the IP address of the physical client system is sent to the second remote desktop. This feature is referred to as nested mode or a double-hop scenario. Horizon Client sends ViewClient_Nested_Passthrough, which is set to 1, along with the client system information to indicate that it is sending nested mode information.
You can add commands to the Horizon Agent CommandsToRunOnConnect, CommandsToRunOnReconnect, and CommandsToRunOnDisconnect group policy settings to run commands or command scripts that read this information from the system registry when users connect and reconnect to desktops. See Running Commands on Horizon Desktops for more information.
Client System Information describes the registry keys that contain client system information and lists the types of desktops and client systems that support them. If Yes appears in the Supports Nested Mode column, it indicates that physical client information (rather than virtual machine information) is sent to a second-hop desktop.
Registry Key | Description | Supports Nested Mode | Supported Desktops | Supported Client Systems |
---|---|---|---|---|
ViewClient_IP_Address | The IP address of the client system. | Yes | VDI (single-user machine) RDS |
Windows, Linux, Mac, Android, iOS |
ViewClient_MAC_Address | The MAC address of the client system. | Yes | VDI (single-user machine) RDS |
Windows, Linux, Mac, Android |
ViewClient_Machine_Name | The machine name of the client system. | Yes | VDI (single-user machine) RDS |
Windows, Linux, Mac, Android, iOS |
ViewClient_Machine_Domain | The domain of the client system. | Yes | VDI (single-user machine) RDS |
Windows |
ViewClient_LoggedOn_Username | The user name that was used to log in to the client system. | VDI (single-user machine) RDS |
Windows, Linux, Mac | |
ViewClient_LoggedOn_Domainname | The domain name that was used to log in to the client system. | VDI (single-user machine) RDS |
Windows For Linux and Mac clients, see ViewClient_Machine_Domain.ViewClient_LoggedOn_Domainname is not given by the Linux or Mac client because Linux and Mac accounts are not bound to Windows domains. |
|
ViewClient_Type | The thin client name or operating system type of the client system. | Yes | VDI (single-user machine) RDS |
Windows, Linux, Mac, Android, iOS |
ViewClient_Broker_DNS_Name | The DNS name of the Connection Server instance. | VDI (single-user machine) RDS |
Value is sent directly from Connection Server, not gathered by Horizon Client. | |
ViewClient_Broker_URL | The URL of the Connection Server instance. | VDI (single-user machine) RDS |
Value is sent directly from Connection Server, not gathered by Horizon Client. | |
ViewClient_Broker_Tunneled | The status of the tunnel connection for the Connection Server instance, which can be either true (enabled) or false (disabled). | VDI (single-user machine) RDS |
Value is sent directly from Connection Server, not gathered by Horizon Client. | |
ViewClient_Broker_Tunnel_URL | The URL of the Connection Server tunnel connection, if the tunnel connection is enabled. | VDI (single-user machine) RDS |
Value is sent directly from Connection Server, not gathered by Horizon Client. | |
ViewClient_Broker_Remote_IP_Address | The IP address of the client system that is seen by the Connection Server instance. | VDI (single-user machine) RDS |
Value is sent directly from Connection Server, not gathered by Horizon Client. | |
ViewClient_Broker_Request_Path | All IP addresses, beginning with the public IP address of the client system that is seen by the Connection Server instance. | VDI (single-user machine) RDS |
Value is sent directly from Connection Server, not gathered by Horizon Client. | |
ViewClient_TZID | The Olson time zone ID. To disable time zone synchronization, enable the Horizon Agent Disable Time Zone Synchronization group policy setting. |
VDI (single-user machine) RDS |
Windows, Linux, Mac, Android, iOS | |
ViewClient_Windows_Timezone | The GMT standard time. To disable time zone synchronization, enable the Horizon Agent Disable Time Zone Synchronization group policy setting. |
VDI (single-user machine) RDS |
Windows |
|
ViewClient_Broker_DomainName | Domain name used to authenticate to Connection Server. | VDI (single-user machine) RDS |
Value is sent directly from Connection Server, not gathered by Horizon Client. | |
ViewClient_Broker_UserName | Username used to authenticate to Connection Server. | VDI (single-user machine) RDS |
Value is sent directly from Connection Server, not gathered by Horizon Client. | |
ViewClient_Client_ID | Specifies the Unique Client HardwareId used as a link to the license key. | VDI (single-user machine) RDS |
Windows, Linux, Mac, Android, iOS | |
ViewClient_Displays.Number | Specifies the number of monitors being used on the client. | VDI (single-user machine) RDS |
Windows, Linux, Mac, Android, iOS | |
ViewClient_Displays.Topology | Specifies the arrangement, resolution, and dimensions of displays on the client. | VDI (single-user machine) RDS |
Windows, Linux, Mac, Android, iOS | |
ViewClient_Keyboard.Type | Specifies the type of keyboard being used on the client. For example: Japanese, Korean. | VDI (single-user machine) RDS |
Windows | |
ViewClient_Launch_SessionType | Specifies the session type. The type can be desktop or application. | VDI (single-user machine) RDS |
Value is sent directly from Connection Server, not gathered by Horizon Client. | |
ViewClient_Mouse.Identifier | Specifies the type of mouse. | VDI (single-user machine) RDS |
Windows | |
ViewClient_Mouse.NumButtons | Specifies the number of buttons supported by the mouse. | VDI (single-user machine) RDS |
Windows | |
ViewClient_Mouse.SampleRate | Specifies the rate, in reports per second, at which input from a PS/2 mouse is sampled. | VDI (single-user machine) RDS |
Windows | |
ViewClient_Protocol | Specifies the protocol being used. | VDI (single-user machine) RDS |
Windows, Linux, Mac, Android, iOS | |
ViewClient_Language | Specifies the operating system language. | VDI (single-user machine) RDS |
Windows, Linux, Mac, Android, iOS | |
ViewClient_Launch_Matched_Tags | Specifies one or more tags. | VDI (single-user machine) RDS |
Windows, Linux, Mac, Android, iOS | |
ViewClient_Launch_ID | Specifies the desktop or application pool unique ID. | VDI (single-user machine) RDS |
Windows, Linux, Mac, Android, iOS | |
ViewClient_Broker_Farm_ID | Specifies the farm ID of the desktop or application pool on an RDS host. | RDS | Windows, Linux, Mac, Android, iOS |