locked
Windows 7 Pro Adding and Switching Keyboard Layout without User Intention RRS feed

  • Question

  • Hello,

    for a while I've had a problem with Windows 7 RC1, and today I installed the final (MSDNAA) version of Windows 7 Professional x64, only to find that the problem still persists. Here is a description (I'll try to keep it as short as possible):

    On my PC, I have installed two keyboard layouts: German and Bulgarian (Phonetic). However, when I launch Counter-Strike:Source, Windows adds a third layout by itself - English. I do not want nor need this layout, but I cannot remove it, as it does not appear in the add/remove layouts list. It does appear in the short list when I left-click on the layout button in the task bar though (see http://i27.tinypic.com/2mnkncy.jpg ). I can switch normally between layouts using Alt+Shift, but the only way to remove the unnecessary layout is to restart or to log off and then log on again.

    Only thing to try that I came up with was switching the Steam application (needed to launch CS:S) and the game itself to German, but that didn't help. I haven't noticed this problem with any other applications (including many ones who are in English), just this one.

    Now obviously this is not a major bug - it does not affect the functionality of the PC in any way, it just makes me press Alt+Shift an additional time. However, it is something that Windows does that is not intended. Also, it is troublesome for me, as I switch back and forth between layouts quite often... and since this problem has appeared, I often find myself typing Bulgarian words with English/German letters or vice versa, which wastes both time and nerves on my end. Years' worth of habit just can't be changed so quickly...

    That is the description of the problem, here the obligatory list of installed/running software:

    Windows 7 Professional x64 (German MSDNAA version) with all updates as of 16.09.2009
    Steam and Counter-Strike:Source both fully updated
    Avast Anti Virus 4.8.1351
    Skype 4.1.0.166
    Logitech SetPoint 4.80.103


    And the core hardware (although I guess it's irrelevant, as this is a software problem):

    Intel Core2Duo E8400
    Gigabyte GA-P35-DS3
    4x1GB RAM
    ATI Radeon HD4870 1GB
    Logitech Media Keyboard, Logitech MX518 mouse
    640 WD & 250GB Samsung SATAII harddisks, AHCI mode

    Any ideas are welcome and much appreciated.
    Wednesday, September 16, 2009 5:15 PM

Answers

  • Hi,

    It seems that the issue is mainly related to Counter-Strike:Source. I suspect that Couter-Strike:Source does not use the language settings that are set in the Language Settings tool to determine the keyboard language setting. While CS:S is launched, it adds the English layout automatically to the Language bar. I recommend you to check in CS:S settings to see if any language settings related to English. If so, try to disable this setting and see if it works. If there isn't any settings, I would like to share a workaround with you, please refer to the following steps:

    Manually delete Keyboard layout in Registry Editor
    =================================

    Note: pay attention to back up your registry first, any incorrect modification can cause unrecoverable damage. 
     
    1. Press Win + R to open a Run box.
    2. Type: regedit and hint Enter.
    3. Navigate to the following item:

    HKEY_CURRENT_USER\Keyboard Layout\Preload

    Delete the registry with the value 00000409.

    4. See how it works.

    BTW, since it is the specific issue related to CS:S, I would also like to suggest you contacting CS:S tech support for help.

    Best Regards.
    Dale Qiao

    Friday, September 18, 2009 9:38 AM

All replies

  • Hi,

    It seems that the issue is mainly related to Counter-Strike:Source. I suspect that Couter-Strike:Source does not use the language settings that are set in the Language Settings tool to determine the keyboard language setting. While CS:S is launched, it adds the English layout automatically to the Language bar. I recommend you to check in CS:S settings to see if any language settings related to English. If so, try to disable this setting and see if it works. If there isn't any settings, I would like to share a workaround with you, please refer to the following steps:

    Manually delete Keyboard layout in Registry Editor
    =================================

    Note: pay attention to back up your registry first, any incorrect modification can cause unrecoverable damage. 
     
    1. Press Win + R to open a Run box.
    2. Type: regedit and hint Enter.
    3. Navigate to the following item:

    HKEY_CURRENT_USER\Keyboard Layout\Preload

    Delete the registry with the value 00000409.

    4. See how it works.

    BTW, since it is the specific issue related to CS:S, I would also like to suggest you contacting CS:S tech support for help.

    Best Regards.
    Dale Qiao

    Friday, September 18, 2009 9:38 AM
  • Hello,

    thank you very much for your reply and the suggested workaround. I did some further investigation, and it appears to me (as a layman) that there are two separate lists of keyboard layouts. The first one, which I will call "full list", is the list of keyboard layouts that I get when I right click on the language bar and press Settings. The second one, which I will refer to as "short list", is the one which shows up after a left click on the language bar. The short list also seems to be the one that is actually "active" - the available keyboard layouts are always the ones listed there, even if they are not on the full list. They also cycle in that order.

    Here is what I tried: I was going for the suggested workaround, but there was no registry entry with the value 409, only 407 and 402. I found out that 407 is the German layout, 402 the Bulgarian one. Deleting them only affects the full list. When I delete both registry entries, the English layout appears in the full list, but I cannot delete it from there. It also shows in the registry though, and removing it from there removes it from the full list, but not from the short one and it remains active. No matter what changes I do to the full list (like adding extra layouts or removing the original ones), those three layouts always remain in the short list: DE, BG, EN. Additional layouts appear there immidiately though, but those three refresh only upon restart or login.

    As for the CS:S options, I looked around but didn't find anything that looks like it would add an English layout. The only CS:S language options I found were the ones in Steam, but the problem remains even when I switch everything there to German.
    EDIT: I just noticed that the problem occurs not only with CS:Source, but with any other Source based game (Source is the game engine used by CS:S).

    I will contact the CS:S tech support. Also, I will try completely deleting and reinstalling Steam and CS:S, let's see if that helps.

    Once again, thanks for your time.

    Best Regards,
    Vladimir
    Friday, September 18, 2009 11:26 AM
  • As you mentioned above that the problem occurs on any kind of Source based game. I suspect that there might be a service forcing the desired keyboard not used while launching Source engine. To overcome this kind of behavior, you can try to add the IgnoreRemoteKeyboardLayout registry and set the value to 1. To do this, please refer to the following steps:

    1.  Open a run box by pressing Win + R.
    2.  Locate and then click the following registry subkey:

    Note: pay attention to back up your registry first, any incorrect modification can cause unrecoverable damage. 

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout

    3.  On the Edit menu, click Add Value, and then add the following registry information:

    Value name: IgnoreRemoteKeyboardLayout
    Data type: REG_DWORD
    Value data: 1

    Good luck.
    Dale Qiao

    Monday, September 21, 2009 4:28 AM
  • Unfortunately, that didn't work either.

    Regards,
    Vladimir
    Thursday, September 24, 2009 7:08 AM
  • How about uninstalling Source engine and reinstalling it in Windows compatibility mode?

    Best Regards.
    Dale
    Thursday, September 24, 2009 8:35 AM
  • How about uninstalling Source engine and reinstalling it in Windows compatibility mode?

    Best Regards.
    Dale

    I'm afraid there's no way to do that (not that I'm aware of) - Source games are installed from within Steam. Basically I just log into Steam and select the game I want to play from the list of games I've purchased. If it's not installed, it just downloads automatically - I have no say in the process. It does create a game .exe though, but launching it from there in compatibility mode didn't help either. I also tried several command line parameters (I can set those from within Steam), no luck there as well.

    I think it's time to give up - like I said, this is just a minor annoyance. It's not even the extra layout that bothers me, it's just the fact that my computer does something it's not supposed to... but I guess if that's my biggest computer problem, I shouldn't be complaining at all :) .

    Regards,
    Vladimir
    Wednesday, September 30, 2009 1:03 PM
  • I have exactly the same issue with Steam changing my keyboard layout. In windows it's set to English international, however in Steam it changes to NL. I do live in Holland, but I sure as ____ don't want a Dutch keyboard layout.

    So anyway, I'll also thoroughly read through the above and work to resolve the issue as well. The problem seems to be specific to how Steam obtains the keyboard layout from Windows. It only occurs on Windows 7.

    It bears no difference which game I launch via steam, so reinstalling CS won't help you.

    Indeed, contacting Steam support may be a valid suggestion - I may do this depending on how I fair with the above hints. Will keep you posted! ^^
    Monday, March 15, 2010 7:57 PM
  • JamesR404 schreef op 15-3-2010 20:57:
    > I have exactly the same issue with Steam changing my keyboard layout. In
    > windows it's set to English international, however in Steam it changes
    > to NL. I do live in Holland, but I sure as ____ don't want a Dutch
    > keyboard layout.

    Remove the Dutch keyboard layout from Region and Language / Land en taal and keep US
    International / Verenigde Staten (internationaal).

    --
    Karel Vos [MVP - Windows Desktop Experience]
    Monday, March 15, 2010 8:18 PM
  • Thank you, Dale Qiao. You very much helped me out.

    Saturday, July 24, 2010 11:12 PM