An additional keyboard layout often appears in the RDP session when connecting to a remote Windows host desktop in a multilingual environment.
For example, you are connected to an RDS host running Windows Server 2019/2016 and you are trying to change the keyboard layout using the Alt+Shift
or Ctrl+Shift
key combination. In some cases, you may find that the keyboard layout does not change when you use the keys in the RDP session. If you click the keyboard icon in the taskbar, you will see that a third keyboard layout has been added to the list (for example, ENG-FR, ENG, and EN-US). Clicking the input language of your choice is the only way to manually change the current keyboard layout in the Remote Desktop session.
This is because by default the Windows client passes the local computer’s current keyboard layout to the RDP session. The problem does not occur if the local and remote keyboard layouts are identical when the RDP session is established.
If the local layout differs from the remote layout, an additional layout will be displayed in the RDP session.
To enable the Windows RDP (or Windows Server RDS) host to ignore the local keyboard layouts of the clients, you must enable the IgnoreRemoteKeyboardLayout registry entry.
- Open the Registry Editor (
regedit.exe
) on the Windows host acting as the RDP server; - Navigate to the HKLM\System\CurrentControlSet\Control\Keyboard Layout registry key;
- Create a 32-bit DWORD value with the name IgnoreRemoteKeyboardLayout and set the value to 1 (the default value is 0);
- Close the registry editor and restart the RDP host to apply the change.
You can also create or modify this registry value from the command prompt:
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Keyboard Layout" /v IgnoreRemoteKeyboardLayout /t REG_DWORD /d 1
Additional keyboard layouts will no longer be displayed in the user session when you connect to your Remote Desktop host.