Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am running Windows 7 Ultimate (w/ SP1), and have multiple UI languages installed - mainly for screenshots etc. Among them are Chinese (traditional) and Chinese (Simplified), which insist on hooking the CTRL+Space key even though I have disabled / overridden these hotkey assignments under Language Bar settings / Advanced key settings.

(It conflicts with CTRL+Space in the Visual Studio IDE, and is pretty annoying beyond that.)

Any ideas?

share|improve this question
up vote 31 down vote accepted

I've been aware of this Windows bug for years. After tons of unsatisfying workarounds and fruitless searching the one or two times a year I attempt to find a solution, I finally have it!


  1. Go to Start > Type in regedit and start it
  2. Navigate to HKEY_CURRENT_USER/Control Panel/Input Method/Hot Keys
  3. Select the key named:
    • 00000070 for the Chinese (Traditional) IME - Ime/NonIme Toggle hotkey
    • 00000010 for the Chinese (Simplified) IME - Ime/NonIme Toggle hotkey
  4. In the right sub-window, there are three subkeys.
    • Key Modifiers designate Alt/Ctrl/Shift/etc and is set to Ctrl (02c00000).
    • Virtual Key designates the finishing key and is set to Space (20000000).
  5. Change the first byte in Key Modifiers from 02 to 00
  6. Change the first byte in Virtual Key from 20 to FF
  7. Log off and log back on. I don't think it's necessary to restart.
  8. Do not change the Hot keys for input languages in Control Panel, unless you want to do this all over again.

Notes: Symptoms

Each registry key (thing that looks like a folder) is for each specific hotkey setting that you would normally find in Control Panel > Region and Language > Keyboards and Languages > Change keyboards... > Advanced Key Settings > Hot keys for input languages. The recurring bug is the hotkey being automatically reset to Ctrl+space even if changed via the GUI.

I can personally confirm this for Windows 7 64-bit and Windows 8.1, though from my research, it looks like it may work for XP and Vista as well.


Traditional Chinese Pocket IME Hot Key Registry Settings

Simplified Chinese MSPY 3.0 IME Hot Key Registry Settings

share|improve this answer
very useful and practical, thx! – Alex SUN Aug 13 '13 at 8:49
You nailed it, bravo. – Philippe Dec 24 '15 at 9:44

Can try editing the registry where the settings are stored directly as suggested in an answer for a similar question: How to prevent Windows XP from stealing my input Ctrl-Space which is meant for Emacs? (the answer mentions Windows 7 as well).

share|improve this answer

Alternatively, for users who don't need the additional languages and the hassle of editing the registry, go to Control Panel, Change keyboards or other input methods, Change keybords..., then under Installed services I removed all but my desired language/setup, English (Ireland).

As Chinese was removed from here, the shortcut also ceased functioning so I was able to use it in visual studio again.

share|improve this answer

I've just got help with an associated issue, and I guess it may be useful for many of you as well:

Windows seems to overwrite personal layout controls configuration with defaults on some occasions. Hence, the way to have a "permanent" solution basically appears to be rewriting your HKEY_USERS\.DEFAULT\Control Panel\Input Method\Hot Keys with what you have in your HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys once you've configured your IME shortcuts (or in this matter their absenсe) correctly.

share|improve this answer

Thanks, it worked. For reference, I exported the modified registry keys:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys\00000010]
"Key Modifiers"=hex:00,c0,00,00
"Virtual Key"=hex:ff,00,00,00

[HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys\00000070]
"Key Modifiers"=hex:00,c0,00,00
"Virtual Key"=hex:ff,00,00,00
share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .