经常与台湾友人聊天的同学可能会为 Windows 8.1 微软拼音输入法切换繁体/简体而烦恼,因为 Windows 8.1 的切换繁体/简体太麻烦了。

在 Windows 8.1 上,要切换微软输入法繁简,普通方法是:控制面板-语言-中文选项-微软拼音选项 中切换简体中文和繁体中文。这步骤实在是繁琐,切换一个繁简输入要花上近半分钟,于是博主寻找一个简便的方法来快速切换微软输入法的繁体/简体输入。

源代码及批处理下载在文章最后,接下来介绍原理。

像 IME 这种设置一般都是保存在注册表中,于是博主在繁体和简体情况下分别把注册表导出,希望通过文件对比找到改变的注册表键值。博主是将 HKEY_CLASSES_ROOTHKEY_CURRENT_USER 等一项一项导出对比的,不然全部导出会有近 200M。

博主一开始使用 Word 2013 对比文件,但是导出的文件有 70M,两个就有 140M,用 Word 对比,Word 的内存占用一度超过 3G,还是没有对比出来。后来又使用 Visual Studio 2013 对比,发现这货只有对比代码管理器里的代码,导入两个其他文件没法对比。没办法,后来搜到一个挺好用的工具,叫做 Code Compare下载地址

安装完,发现这个工具需要注册,但是这个工具有 30 天的 Pro 版试用,其实我们用 Free 版足够了。

Code Compare
Code Compare

将导出的两个注册表进行对比,最后在 HKEY_CURRENT_USER\Software\Microsoft\InputMethod\Settings\CHS\Output CharSet 中发现了改动。最后经过博主测试,直接更改上述键值就可以实现繁体/简体的切换,简体值为 0,繁体值为 1。

对比图
对比图

经过博主对批处理的学习,写出了 Win8.1 快速切换微软输入法繁体/简体的批处理

同时感谢小伙伴@稀歪 @疯子 的热心测试,测试表明,若您没有对系统输入法进行删除,该批处理可以正常切换繁体与简体。

批处理暂时只测试了 Windows 8.1 系统,没有对 Windows 8 进行测试,同学们可以测试下 Windows 8 是否兼容,把测试结果反馈给我。

使用方法:把批处理放在桌面等方便点击的地方,要切换时只要运行一下批处理,就能把繁体转为简体,把简体转为繁体。

先贴源代码,下载在最后。

@ECHO OFF
REG QUERY "HKCU\Software\Microsoft\InputMethod\Settings\CHS"|FIND "Output CharSet" && GOTO Change || GOTO ADD

:ADD
REG ADD "HKCU\Software\Microsoft\InputMethod\Settings\CHS" /v "Output CharSet" /t REG_DWORD /d 0 /f

:Change
FOR /F "skip=2 tokens=2,3*" %%i IN ('REG QUERY "HKCU\Software\Microsoft\InputMethod\Settings\CHS" /v "Output CharSet"') DO IF "%%k"=="0x0" (
REG ADD "HKCU\Software\Microsoft\InputMethod\Settings\CHS" /v "Output CharSet" /t REG_DWORD /d 1 /f
) else (
REG ADD "HKCU\Software\Microsoft\InputMethod\Settings\CHS" /v "Output CharSet" /t REG_DWORD /d 0 /f
)

ping -n 2 127.1>nul

下载地址:百度网盘


原创文章,转载请以链接形式注明出处:http://blog.ttionya.com/article-179.html