Optimizing DPI Scaling and Font Size for Enhanced RDP (RDS) Experience

Users who work in terminal sessions on an RDS (Remote Desktop Services) server often face a challenge with tiny UI elements making it hard to read. This problem is particularly evident for those using Full HD/HiDPI (Retina) monitors with high resolutions such as 2K and 4K. During an RDP session, users will find that the adjustability of the display settings is limited. Often, they encounter a message stating:

Display settings can't be changed from a remote session.

By default, RDP session settings in Windows Server 2019, 2016, and 2012R2 (as well as Windows 10) inherit the scaling settings from the client machine. Therefore, if the client’s DPI settings are adjusted to 125%, that same scaling applies to the remote session.

To prevent the scaling from being inherited, one can create a registry entry named IgnoreClientDesktopScaleFactor with a DWORD value of 1.

To do this, run the following command in the command prompt:

reg add "HKLMSYSTEMCurrentControlSetControlTerminal ServerWinStations" /f /v IgnoreClientDesktopScaleFactor /t REG_DWORD /d 1

Following this, users can modify the scaling options by editing the registry:

  1. Navigate to HKCUControl PanelDesktop.
  2. Create a REG_DWORD parameter named LogPixels.
  3. Set the scaling parameters using decimal values:
    • 96 for 100% scaling
    • 120 for 125%
    • 144 for 150%
    • 192 for 200% (ideal for 4K monitors)
    • 288 for 300%

This can be executed with the command:

reg add "HKCUControl PanelDesktop" /f /v LogPixels /t REG_DWORD /d 144

Lastly, log off the Remote Desktop session to apply the changes.

For additional scaling control, users can also specify the DesktopScaleFactor directly in their *.RDP file:

desktopscalefactor:i:150

Acceptable values include: 100, 125, 150, 175, and 200.

In the newer Windows Server editions (2022 and 2025), however, the IgnoreClientDesktopScaleFactor option is disregarded, meaning desktop DPI scaling will always adhere to the client’s settings. Suggested workarounds include adjusting scaling options directly on the client machine or employing alternative RDP clients, such as the Windows App (formerly known as Microsoft Remote Desktop) or mRemoteNG.

Moreover, the mstsc.exe client offers a dynamic scaling feature, known as smart sizing, which fits the remote desktop to the RDP window without requiring scroll bars. To activate this mode, add the following line to the *.RDP file:

smart sizing:i:1

In modern RDP client versions, enabling Smart Sizing can also be done via the menu in the upper left corner of the client interface. With this feature enabled, the remote desktop display will automatically adjust to fit the client window size upon resizing.


by

Tags: