Windows 说 Dvorak 是默认键盘布局,但所有新窗口都使用 QWERTY

8 dvorak keyboard-layout windows-server-2008-r2

感谢我在此线程中获得的帮助,我能够让 Windows 默认为所有新文档/窗口使用 Dvorak 键盘布局。

只有一个问题。

每次登录都得重新设置。

当我打开文本服务和输入语言对话框(可从区域和语言控制面板访问或通过右键单击语言栏并单击Settings...)时,它显示Dvorak 是默认键盘布局,但所有新窗口/文档仍然默认到 QWERTY。

我可以通过将默认值更改为 QWERTY,单击Apply,然后将其改回 Dvorak 并单击 来解决此问题OK。但是每次登录 Windows 时都必须这样做,这有点痛苦。

有没有人知道在 Windows Server 2008 R2 中永久更改默认键盘布局的解决方法或某种方法?

屏幕截图显示选择 Dvorak 作为默认输入语言,但语言栏使用 QWERTY。

这是我的注册表的样子HKEY_CURRENT_USER\Keyboard Layout

  • 预载
    • 1:d0010409
    • 2:00000409
  • 替代品:
    • d0010409:00010409
  • 切换:
    • 热键:3
    • 语言热键:3
    • 布局热键:3

注意:我已经在许多虚拟实例上注意到这种行为,但它似乎不会发生在物理(非虚拟化)安装上。

har*_*ymc 1

键盘布局包含在注册表项中HKEY_CURRENT_USER\\Keyboard Layout
\nREG_SZ 项“1”包含第一个布局,“2”包含第二个布局,依此类推。

\n\n

Windows 键盘布局一文列出了大多数键盘 ID。\n您还会发现上述布局 ID 定义为注册表项的子项
\n HKEY_LOCAL_MACHINE\\System\\CurrentControlSet\\Control\\keyboard layouts

\n\n

分析您的注册表信息:

\n\n

Preload确定键盘切换按钮(位于任务栏右下角)中存在哪些键盘布局,数字决定顺序。您有两个:d0010409=德沃夏克英语和 00000409=美国英语。\n此列表顺序的含义仅此而已。

\n\n

Substitutes将值 d0010409 映射到布局 10409,这也是 Dvorak。我假设关键代码上半部分的更改并不重要,并且由替换配置单元正确映射。

\n\n

缺少的可能是将 00000409 (US) 映射到 00010409 (Dvorak) 的替换。这可以通过手动输入或通过命令来完成:

\n\n
reg add "HKCU\\Keyboard Layout\\Substitutes" /v 00000409 /d 00010409\n
Run Code Online (Sandbox Code Playgroud)\n\n

更改注册表时,请采取一切适当的预防措施:首先创建系统还原点并导出整个注册表项。

\n