« | August 2025 | » | 日 | 一 | 二 | 三 | 四 | 五 | 六 | | | | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | | | | | | | |
| 公告 |
Sorry,这里只是一个网络收藏夹,收藏一些不得不收藏的文章。
|
Blog信息 |
blog名称:万色返空 日志总数:37 评论数量:116 留言数量:-3 访问次数:322681 建立时间:2004年12月25日 |

| |
[程序开发]输入法安装制作原理 文章收藏, 软件技术
尧天云 发表于 2004/12/28 1:28:34 |
转载自: http://www.wbfans.com/showart.asp?art_id=39&cat_id=7
★Win9x/Me 系统
步骤一:拷贝文件。在Win9x/Me系统下, 把输入法相关文件(一般是*.IME,可能还有其它 .DLL文件)拷贝到 Win$\System$ 目录下。
步骤二:修改注册表。①第一处:在 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Keyboard Layouts\ 下新建主键(E0xx0804, 请替换 xx 为一不重复的十六进制数),再在该主键下新建三个字串项,内容如下:格式为:名称 = 数据IME File = imeName.imeLayout File = kbdus.kbdLayout Text = 输入名名称②第二处:在 HKEY_CURRENT_USER\Keyboard Layout\preload 下新建一主键 x ,(数字, 比现有的主键最大数大 1)其内容为:(默认) = E0xx0804 (默认用 "" 表示键名, E0xx0804 就是上述第一处新建的那一个主键名)
步骤三:激活输入法。(即使桌面右下角的输入法列表中出现新安装的输入法)简单地说就是调用一个Windows的API,激活刚刚安装的输入法,否则只有在重启计算机后,桌面右下角的输入法列表中才会出现你安装的输入法。使用Windows API:LoadKeyoardLayout("E0xx0804", KLF_ACTIVATE), 激活输入法, 具体用法请查看 MSDN。
★WinNT/2000/XP 系统
步骤一:拷贝文件。在WinNT/2000/XP 系统下, 把输入法相关文件(一般是*.IME,可能还有其它 .DLL文件)拷贝到 Win$\System$ 目录下。
步骤二:修改注册表。①第一处:在 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Keyboard Layouts\ 下新建主键(E0xx0804, 请替换 xx 为一不重复的十六进制数),再在该主键下新建三个字串项,内容如下:格式为:名称 = 数据IME file = imeName.imeLayout File = kbdus.DLLLayout Fext = 输入名名称②第二处:HKEY_CURRENT_USER\Keyboard Layout\Preload 下,新建字串项 x ,名称及数据为: x = E0xx0804 (x 是数字, 比现有的最大键名值大1, E0xx0804 是上述新建的主键名)。
步骤三:激活输入法。(即使桌面右下角的输入法列表中出现新安装的输入法)使用Windows API:LoadKeyoardLayout("E0xx0804", KLF_ACTIVATE), 激活输入法, 具体用法请查看 MSDN。
说明:①步骤三如果不做的话,则在重启计算机后,桌面右下角的输入法列表中才会出现你安装的输入法,否则需要用户手动在“控制面板”的“输入法”中添加到桌面右下角的输入法列表中去。②Win$是指系统Windows的安装目录,Win9x/Me下一般是 x:\Windows,而 WinNT/2000 一般是 x:\Winnt,WinXP下一般是 x:\Windows。③System$是指 Windows的系统目录,Win9x/Me下一般是 Win$ 目录下的 System 目录,WinNT/2000/XP 下一般是 Win$ 下的System32目录。另:有一些朋友在写输入法安装程序时,只使用 ImmInstallIME 这个API,好像不用修改注册表,应该也是可以的。具体还是查看MSDN吧,这个API我没有使用过。 |
|
|