我正在运行 Windows 7 Ultimate(带 SP1),并安装了多种 UI 语言 - 主要用于屏幕截图等。其中包括中文(繁体)和中文(简体),它们坚持挂钩CTRL+Space键,即使我已在语言栏设置/高级键设置下禁用/覆盖了这些热键分配。
CTRL(它与 Visual Studio IDE 中的+冲突Space,而且非常烦人。)
有任何想法吗?
答案1
我已经注意到这个 Windows 错误年每年我都会尝试一两次解决方案,但每次都徒劳无功,我终于有它了!
程序
- 转到
Start
> 输入regedit
并启动它 - 导航
HKEY_CURRENT_USER/Control Panel/Input Method/Hot Keys
- 选择名为的键:
00000070
对于Chinese (Traditional) IME - Ime/NonIme Toggle
热键00000010
对于Chinese (Simplified) IME - Ime/NonIme Toggle
热键
- 在右侧子窗口中,有三个子键。
- 键修饰符指定Alt/ Ctrl/ Shift/etc 并设置为Ctrl(
02c00000
)。 - 虚拟键指定完成键并设置为Space(
20000000
)。
- 键修饰符指定Alt/ Ctrl/ Shift/etc 并设置为Ctrl(
- 将第一个字节更改
Key Modifiers
为02
00
- 将第一个字节更改
Virtual Key
为20
FF
- 注销并重新登录。我认为没有必要重新启动。
- 请不要更改
Hot keys for input languages
控制面板,除非您想重新执行此操作。
注释:症状
每个注册表项(看起来像文件夹的东西)都对应着您通常在 中找到的每个特定热键设置Control Panel > Region and Language > Keyboards and Languages > Change keyboards... > Advanced Key Settings > Hot keys for input languages
。反复出现的错误是热键会自动重置为Ctrl+ space,即使通过 GUI 进行更改也是如此。
我可以亲自确认这适用于 Windows 7 64 位和 Windows 8.1,但从我的研究来看,它似乎也适用于 XP 和 Vista。
资料来源:
答案2
谢谢,成功了。作为参考,我导出了修改后的注册表项:
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
答案3
我刚刚得到了一个相关问题的帮助,我想它对你们中的许多人来说也可能有用:https://www.neowin.net/forum/topic/1261058-windows-81-is-forgetting-ctrl12345-shortcuts-designated-for-keyboard-layout-switching-after-wa/
在某些情况下,Windows 似乎会用默认值覆盖个人布局控件配置。因此,获得“永久”解决方案的方法基本上似乎是在 正确配置 IME 快捷方式(或在这种情况下,它们的缺失)后HKEY_USERS\.DEFAULT\Control Panel\Input Method\Hot Keys
,用您现有的内容 重写您的HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys
IME 快捷方式。
答案4
或者,对于不需要附加语言和编辑注册表麻烦的用户,请转到控制面板,更改键盘或其他输入法,更改键盘...,然后在已安装的服务下,我删除了所有内容,但保留了我想要的语言/设置,英语(爱尔兰)。
由于这里的中文被删除了,快捷方式也停止了运行,所以我能够再次在 Visual Studio 中使用它。