Tuesday, June 29, 2010

When using Remote Desktop the keyboard layout always defaults to EN (English)

Finally there's a solutionYou…

  • use a different keyboard layout than EN (English)
  • use Remote Desktop to connect to another machine
  • the default keyboard/input language is set to EN (regardless of your user settings)

… then this is your solution:

On the machine you connect to run the following .REG file:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"IgnoreRemoteKeyboardLayout"=dword:00000001

Download: IgnoreRemoteKeyboardLayout.zip

25 comments:

Anonymous said...

Neno, you solved a key question to me. Thank you very VERY much!

Anonymous said...

Neno - you are the man!!!

I had an issue that I'd been trying to fix for hours. If I did a Remote Desktop to my XP (SP3) box the default Input Language would be Welsh - UK Extended Keyboard. I tried everything - mostly using the standard Control Panel->Region etc... But it always went back to Welsh!!! I even tried removing it.

Only after reading your blog did I notice that logging on using the Console all was ok. Adding (I did it by hand) that Registry entry fixed it and XP no longer thinks I'm Welsh when I remote desktop on.

Thanks Neno!!

Neno said...

@Anonymous: I'm glad you're not "Welsh-UK" anymore. :)

Anonymous said...

Excellent!. Easier and faster than any other I found. No more changing keyboard language when using Remote Desktop.

Anonymous said...

Thanks! I was tired to remove this US keyboard and switch back AZERTY one! Worked with W2K SV and W2K3 SV as well.

Anonymous said...

Thanks, solved the problem straight away.

Anonymous said...

Thanks a lot for the tip.
Works like a charm on 7

Anonymous said...

Excellent, no I can use my Mac on RDP whith Apple keyboard layout in Norwegian.
Thanks!

Anonymous said...

Fantastic work! Thank you very much!

themainman said...

Both remote and local computers had the same single language (Canada EN, US keys) on them and yet I was still typing with a UK variant (pound symbol instead of #). After confirming that both were the same and no UK languages were set, a quick Google search brought me here. Two minutes later, I had my # key back. Thanks so much!

themainman said...

Both remote and local PCs had the same Canada EN, US key layouts and yet I was getting the pound symbol instead of #. Was stumped until a Google search led me here and fixed my problem. Thanks so much!

Krzysztof said...

Thank You very much.
Greetings from Poland.

Anonymous said...

Thanks. This solved an issue I had using HP thin clients connecting to a Windows server 2008 Terminal server

Anonymous said...

I've got just the opposite. When I connect to my servers from my Windows7 home PC my spanish keyboard layout gets transferred to the machine I'm connecting to. I wish there was a registry hack for the originating PC not to transfer my keyboard layout.

Anonymous said...

Thanks! Your hint was the solution!

Unknown said...

A great tip, but I have the same problem as Anonymous (Jan 26 2012). All my RDP sessions show as Welsh. It's not a big issue, as the keyboard works fine, so I'm not going to run the reg hack on 30-odd servers, but I just wondered if anyone knew why it happened?
Thanks.

SykSti said...

Me, its the same as Anonymous March 14. I want the keyboard to NOT transfer to my remote PC because my users use different keyboard, and i will only support the one i've put in my remote PC.
Is there a way for that?

JanzySI said...

Works on WinSRV2008R2 as well. I just had to add the new DWORD 64Bit...

Gen said...

I can't believe Microsoft still has this problem even on Windows 10 ! I am on a Mac at home and connect via remote desktop from home to a Windows 10 machine and every 2-3 minutes it changes the language from French Swiss to ENG USA (even the machine in the office is using French French keyboard). It's such a stupid behaviour and really maddening - why don't they fix this and make it a choice in the parameters of Windows. I will try your fix and hope it works.
For those who didn't figure it out yet - this setting will indeed solve the problems of Windows picking up your Spanish keyboard and putting it on your Windows box too if you want that. It tells windows to ignore the remote keyboard entirely and use the settings on the PC that you are connecting to. Hence if you want to change it to match your home keyboard, you can do that and it won't keep resetting it to something stupid, or you can choose not to set it to something and it will keep the setting on the remote PC "as is". Thank you for the registry entry key to use - this is perfect. And so stupid that Microsoft has not seen fit to put this in as a parameter somewhere on their settings for the remote keyboards.

Unknown said...

WRONG !! All local users need to have their own language keyboard... with this procedure... you remove all their local keyboards !!!! do not proceed this procedure... you need to do the opposite : the server need to accept all local keyboards (French, Japanese, Brasilian etc)...

Anonymous said...

Hi!, Just tried your fix in Win Server 2012 R2 running WebRD. The language appear but then i log-off. It did not show up anymore.

Anonymous said...

Thank you verry much. We are in germany and we forgot to put in the german language pack and after install it was still english.. But this saved our butts.

Anonymous said...

Merci beaucoup.
Thank you very much from France.

Anonymous said...

شكراً جزيلاً

Unknown said...

Thanks Neno for your excellent solution. I am Latvian, and would like to have EN-US keyboard on a remote machine. Nothing wrong would be with LV keyboard, however Microsoft erroneously used to always set my input language to LIT and non QWERTY layout. In general Latvia and Lithuania are different countries, and it's a pity that Microsoft does not appear to have difference. Anyway I am happy with the fix you have shared, thank you very much!