HDX™ screen sharing
Overview
The Linux VDA lets you share the screen of your virtual desktop with session users on other virtual desktops.HDX Screen sharing is available for shadowing using Citrix Director for Citrix Virtual Apps and Desktops on-premises installations and Citrix Monitor for Citrix Cloud deployments.
Note:
If session sharing occurs between multiple Linux VDAs, it is recommended to upgrade to the same VDA version to avoid keyboard input issues.
If different keyboard layouts exist between the viewer’s session and the sharer’s session, the sharer’s keyboard layout is effective.
It is recommended that the viewer’s Citrix Workspace™ app use Scancode mode, as there are more limitations when using Unicode mode.
Unicode mode in the Citrix Workspace app client might result in some characters not being recognized.
When using Unicode mode, it is recommended that the sharer and viewer use the same keyboard layout to avoid mixed output.
If shortcut key combinations are active in both the viewer and the sharer, they only take effect in the viewer.
If a shortcut key includes the Super key, it takes effect in the viewer and is also sent to the sharer.
The following example walks you through the procedure of sharing a screen and viewing someone else’s screen.
To share a screen:
-
In the notification area of your virtual desktop, click the following system tray icon and select Screen sharing > Share my screen.


-
Click Copy and Close.
The current screen sharing code persists until you stop and restart sharing your screen.

Tip:
While you are sharing your screen, there is a red border around it, indicating that sharing is in progress.
-
Share the copied code with session users on other virtual desktops that you want to share your screen with.
-
To let a viewer control your screen, select Give control and then the viewer’s name. To stop giving control, clear the viewer’s name.

-
To stop sharing your screen, select Stop sharing my screen.

To view someone else’s screen:
-
In the notification area of your virtual desktop, click the screen sharing icon and select View someone else’s screen.

-
Enter the connection code of the screen that you want to view and then click Connect.

-
Wait for the screen sharer to accept your request. For example:

Tip:
- On the sharer side, the Linux system issues a notification of your request.
- If the sharer does not accept your request within 30 seconds, your request expires and a prompt appears.
-
After the screen sharer accepts your request by clicking OK, the shared screen appears in your Desktop Viewer. You are connected as a viewer with an automatically assigned user name.

-
To request control over the shared screen, click the mouse icon in the upper left corner.
Tip:
- If the sharer does not accept your request within 30 seconds, your request expires.
- Only one viewer is allowed to control a shared screen at a time.
Click the mouse icon again to release control over the shared screen.

-
To disable display scaling or scale to the window size, click the icon next to the mouse icon.

Screen sharing improvement
On the Linux VDA, the screen sharing improvement features can be configured according to requirements by using following registry keys.
To make these settings to take effect, the linux VDA session must be restarted (logoff and login).
-
ScreenShareCodeType - Configures the connection code to use. By default, the shortened connection code will not be used.
Enable shortened connection code
#/opt/Citrix/VDA/bin/ctxreg create -k "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "ScreenShareCodeType" -d "0x01" --force
<!--NeedCopy-->
**Disable shortened connection code**
#/opt/Citrix/VDA/bin/ctxreg create -k "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "ScreenShareCodeType" -d "0x0" --force
<!--NeedCopy-->
- ScreenSharingUsers - Controls the number of viewers allowed to join. By default, the number of users allowed to join are 10.
Example, set number of viewers allowed to 32
#/opt/Citrix/VDA/bin/ctxreg create -k "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "ScreenSharingViewerMaxNum" -d "0x20" --force
<!--NeedCopy-->
- ScreenShareJoinTimeoutInS - Controls the timeout after which the screen sharing automatically stops if no user has joined or all connected users have disconnected. Currently, this registry key also controls when the connection code has expired if users have joined. After the code is expired, it cannot be used again and the sharer will need to regenerate a new code. The default value is 600 (10 minutes)
Example, set the join timeout to 300 seconds (5 minutes)
#/opt/Citrix/VDA/bin/ctxreg create -k "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "ScreenShareJoinTimeoutInS" -d "0x12C" --force
<!--NeedCopy-->
- ScreenShareRequestTimeoutInS - Controls the timeout after which the user connection or screen control requests are auto rejected if the sharer does not respond. The default value is 30 seconds.
Example, set the request timeout to 60 seconds.
#/opt/Citrix/VDA/bin/ctxreg create -k "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "ScreenShareRequestTimeoutInS" -d "0x3C" --force
<!--NeedCopy-->
- ScreenSharePortStart - Controls the start of the port range to use. The default start port is is 52525 (configured by VDA installer) and the default range is 100. If a custom port range is specified, then appropriate firewall rules must be set for those ports to ensure screen sharing data can flow on those ports.
Example, change the start port to 4096
#/opt/Citrix/VDA/bin/ctxreg create -k "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "ScreenSharingPortBegin" -d "0x1000" --force
<!--NeedCopy-->
- ScreenSharePortEnd - Controls the end of the port range to use. The default end port is 52625 (configured by VDA installer).
Example, change the end port to 4196
#/opt/Citrix/VDA/bin/ctxreg create -k "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "ScreenSharingPortBegin" -d "0x1064" --force
<!--NeedCopy-->
Configuration
The screen sharing feature is disabled by default. To enable it, complete the following settings:
-
For Citrix Virtual Apps and Desktops™ 2112 and later, enable the ScreenSharing policy in Citrix Studio.
-
(Optional) For Citrix Virtual Apps™ and Desktops 2109 and earlier, enable screen sharing on the Linux VDA by running the following command:
sudo /opt/Citrix/VDA/bin/ctxreg update -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -v "EnableScreenSharing" -d "0x00000001" <!--NeedCopy--> -
Allow ports 52525–52625 in your firewall.
Considerations
-
The screen sharing feature does not support the H.265 video codec.
-
The screen sharing feature is not available for app sessions.
-
Users of desktop sessions can share their session screens with up to 10 viewers by default. The maximum number of viewers is configurable through
ctxreg update -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -v "ScreenSharingViewerMaxNum" -d <hex_value>. When the maximum number is reached, a prompt appears when users try to accept extra connection requests.