Windows 输入法在注册表中的管理
- 查看语言栏的输入法
- 法一
- 法二
- 查看默认输入法
- 找到默认输入法的 CLSID
- 根据 CLSID 查找对应的输入法
WINDOWS下输入法中英文切换
切换输入法半角全角(打开关闭输入法)
输入法的注册、安装和卸载
Win10微软拼音输入法设置-注册表
Text Services Framework
输入法开发日记
环境:win10系统,系统自带微软拼音输入法,搜狗输入法 12.6
查看语言栏的输入法
法一
打开注册表编辑器后,查找路径 HKEY_CURRENT_USER\Keyboard Layout,该子键定义了语言栏中语言和keyboard layouts,本系统安装了两个输入法,都是中文输入法,从HKEY_CURRENT_USER\Keyboard Layout\Preload
可以看见位于任务栏中可选的语言,数据显示的是十六进制,低 4 位为 language id:
问题:
安装 搜狗输入法 12.6 时 preload
的值有两项,但安装 搜狗输入法 7.1 时只有一项,所以不一定所有的输入法都显示在这里?
法二
在路径 HKEY_CURRENT_USER\Software\Microsoft\CTF\SortOrder\AssemblyItem\0x00000804\{34745C63-B2F0-4784-8B67-5E12C8701A31}
中查看,会将任务栏的输入法列出来,如两个输入法对于下面的两个子键 00000000
和 00000001
,其中第一个为默认输入法,测试修改 默认输入法后排序会改变(测试的两个输入法为 CTF 框架,在 win10 系统,其他环境不知道会不会变)。
上面路径中的子键0x00000804
为 langid
,0804
只中文输入法。
子键 {34745C63-B2F0-4784-8B67-5E12C8701A31}
为预定义的 GUID,为 GUID_TFCAT_TIP_KEYBOARD
的值,见 Some known GUIDS 和 Predefined Language Bar Items。
查看默认输入法
找到默认输入法的 CLSID
或者
根据 CLSID 查找对应的输入法
对于 CIF 框架,查找路径 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\CTF\TIP
,然后根据前面找到的 CLSID 查找对应的子键,如下: