what happens if you log off the existing session and connect with the keyboard layout set? I remember that some older Windows versions don't apply keyboard layout on existing sessions.
this effects also newly created sessions, where the layout is already stored in rdp connection.
I've done some tests and it seems that the keyboard layout string is not honored by the server. I checked in Royal TS (which uses the Microsoft RDP ActiveX control which ships with Windows) and I also checked in Royal TSX (on macOS which is based on the FreeRDP library). Setting the keyboard layout in both clients doesn't affect the server in any way. Since I see this in both clients, I suspect that MS messed up something on the server side. According to the official docs, the property is not marked as deprecated and should work: https://docs.microsoft.com/en-us/windows/win32/termserv/imstscadvancedsettings-keyboardlayoutstr
I will do some more research and try to reach out to MS for more information on the issue but right now, there's not much we can do :(
After some more testing, I found out the following:
1. existing RDP sessions do not take keyboard layout configuration. In order to set the remote keyboard layout, make sure the RDP session is "fresh". In case a session already exists for that user, do a "log off" (not a disconnect!).
2. You also need to make sure the remote machine has the requested keyboard layout "installed". I needed to go to the Control Panel and add the German keyboard layout first to make it work.
I hope this helps.
Ok, interestingly with another created vagrant box it works with DE-DE. With DE-AT it still doesn't work. But DE-DE is also fine.
I see the same issue in my tests. Even though I installed German Austria on the remote machine it will not be selected when configured in Royal TS. I see the same behavior in FreeRDP so I'm pretty sure it's not a client issue.
Understood. At least that's reproducible behavior now