环境

Windows 10 21H2
理论上支持所有现Windows版本

问题描述

本人会在电脑系统上设置两个输入法,一个是中文输入法,一个英文输入法;在打游戏的时候会切到英文输入法,防止输入法跳出来
可是添加了一个英语(美国)键盘后,时不时会蹦出来一个英语(英国)键盘,在系统设置中是没有设置的

尝试解决临时解决

很简单,添加一个新的英语(英国)后,再将其删除,即可删除多出来的输入法。问题在于,输入法删除后,过一段时间会重新自动添加回来

最终解决不完美解决

既然你这么喜欢蹦出来,那我就直接让你从这台电脑上消失吧。因为我也不用你,那我就把你删了。

Stage. 1

修改注册表,删除项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\00000809

解释

这一步是直接删除英语(英国)键盘的注册值,其中00000809就代表英语(英国)

一键执行命令行

  1. reg delete "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\00000809" /f

备份

环境Windows 10 21H2下的备份值,不同版本可能但几乎不可能不同

  1. Windows Registry Editor Version 5.00
  2. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\00000809]
  3. "Layout Display Name"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,\
  4. 52,00,6f,00,6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,\
  5. 00,32,00,5c,00,69,00,6e,00,70,00,75,00,74,00,2e,00,64,00,6c,00,6c,00,2c,00,\
  6. 2d,00,35,00,30,00,32,00,35,00,00,00
  7. "Layout File"="KBDUK.DLL"
  8. "Layout Text"="United Kingdom"

Stage. 2

修改注册表,删除字符串值HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout\DosKeybCodes\00000809

一键执行命令行

  1. reg delete "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout\DosKeybCodes" /v "00000809" /f

备份

  1. Windows Registry Editor Version 5.00
  2. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout\DosKeybCodes]
  3. "00000809"="uk"

Stage. 3

重启

一键执行命令行

  1. shutdown /r /t 0

恢复完美恢复

对于本篇造成的破坏,可以完美恢复,只需要将原本的内容添加回去即可,每一步都有备份。

一键执行命令行

  1. reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\00000809" /v "Layout Display Name" /t REG_SZ /d "@%SystemRoot%\system32\input.dll,-5025" /f
  2. reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\00000809" /v "Layout File" /t REG_SZ /d "KBDUK.DLL" /f
  3. reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\00000809" /v "Layout Text" /t REG_SZ /d "United Kingdom" /f
  4. reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout\DosKeybCodes" /v "00000809" /t REG_SZ /d "uk" /f

或将下面的内容以reg的形式添加至注册表

  1. Windows Registry Editor Version 5.00
  2. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\00000809]
  3. "Layout Display Name"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,\
  4. 52,00,6f,00,6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,\
  5. 00,32,00,5c,00,69,00,6e,00,70,00,75,00,74,00,2e,00,64,00,6c,00,6c,00,2c,00,\
  6. 2d,00,35,00,30,00,32,00,35,00,00,00
  7. "Layout File"="KBDUK.DLL"
  8. "Layout Text"="United Kingdom"
  9. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout\DosKeybCodes]
  10. "00000809"="uk"