自由拼音输入法的编译和安装

上传人:j****9 文档编号:45539043 上传时间:2018-06-17 格式:DOC 页数:3 大小:37KB
返回 下载 相关 举报
自由拼音输入法的编译和安装_第1页
第1页 / 共3页
自由拼音输入法的编译和安装_第2页
第2页 / 共3页
自由拼音输入法的编译和安装_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《自由拼音输入法的编译和安装》由会员分享,可在线阅读,更多相关《自由拼音输入法的编译和安装(3页珍藏版)》请在金锄头文库上搜索。

1、自由拼音输入法的编译和安装自由拼音输入法的编译和安装xp 环境下用环境下用 vc6.0 编译自由输入法编译自由输入法自由拼音输入法是一种免费的输入法软件。它基于 windows ime 机制编写而成,并且完全公开了源代码,且遵循gun gpl(general public license)。 它是李振春先生开发的,大部分的后来的输入法都参考了它的代码。所 以这个输入法的贡献很大。最近要做一个 windows 的输入法,以便为另外一个项目做准备。于是开始 研究起 windows 的输入法-自由输入法。但是在网上找到的很多源码,都是不带工程的,不管是 vs2008 的工程还是 vc6.0 的工程,

2、一个都没找到。后来我自己弄了一个带 vc6.0 的工程的自由输入 法,传到 CSDN 上共享起来。希望后来者能少走一些弯路吧。下载的源码的目录结构说明:1.binary。作者编译好的,可以直接安装的自由拼音输入法。2.imm.编译时需要用到的头文件和静态库。3.tool.作者提供的工具4.source.自由输入法的源码。编译的步骤如下:1。新建 vc6.0 的动态链接库的空工程,工程属性选择动态链接库(win32 dynamic-link library) ,因为,输入法本身是一个动态链接库。该动态链接库由 IME 调用。输入法的具体原理,请另行 google。2。把 source 文件中的

3、c 文件和 h 文件添加到工程。3. 把 imm 里面的 h 文件复制到编译器的 include 的目录下。 (如果不这样做, 会出现很多字段没有定义) 。因为编译器自带的 imm.h 文件版本比较旧。4. 把 imm 里面的 IMM32.lib 文件复制到工程目录下,并在 freepy.c 中添加 一句#pragma comment(lib,“IMM32.lib“)。即添加静态链接库。5. 设置工程的输出为 Debug/freepy.ime。其实 ime 是 ime 框架下的 windows 输入法。 6.编译链接并生成 ime 文件。 附:本人做好的带 vc6.0 工程的自由拼音输入法下载

4、地址: http:/ 可直接编译。【给我自己的耳光】看源码的时候或者编译别人的源码的时候,一定要先好好看人家写的帮助文档。 要耐心!不然真的会走很多很多的弯路。自由输入法的安装自由输入法的安装A .运行 register.exe,注册输入法。实际上是在注册表里面填充HKEY_LOCAL_MACHINESystemCurrentControlSetControlKeyboard LayoutsHKEY_LOCAL_MACHINESoftwarefreepy。对于 Keyboard Layouts,填充了三个项:IME File freepy.ime-告诉系统自由输入法的动态链接库程序是什 么。x

5、p 默认在 windows/system32 里面找相应的 ime 程序。Layout File kbdus.dll-告诉系统键盘布局程序.自由输入法用的是默 认键盘布局。Layout Text 自由输入法-告诉系统输入法的名称是什么。B.把 binary 目录下的文件拷贝到 windows 的系统目录下: c:windowssystem32。其中的文件说明如下:freepy.hlp 是帮助文件freepy.tab 是输入法字典freepysys.dic 是系统词库另外,当用户使用时,系统会自造一个用户词库 freepyusr.dic,并且自造词 库和系统词库完全一样。C.把由源码编译好的 D

6、ebug/freepy.dll 改名为 freepy.ime.然后拷贝到 c:windowssystem32。D.像其它输入法那样,从控制面板中选择该输入法:自由拼音输入法。然后就可以用自由拼音输入法了。【提醒】在安装输入法的过程中,如果出现一些解决了好久都没解决的问题,可以 考虑重启电脑,然后,问题就不知不觉解决了。O(_)Owindows 拼音输入法的基本原理拼音输入法的基本原理windows 系统下汉字输入法实际上是将输入的标准 ascii 字符串按照一定的 编码规则转换为汉字或者字符串,然后将字符串或者汉字发送到目的窗口。其 中,这个转换的过程,由操作系统负责完成。消息流如图:键盘事件

7、应用程序USER.exe输入法管理器输入法当键盘有按键消息,操作系统先将消息发送给 user.exe 软件接收,user.exe 将 键盘事件发送给输入法管理器(Input Method Manage,imm),imm 再将键盘事件 传到输入法中,这个输入法就是我们自己实现的 ime 动态链接库。从这里会发 现,为什么我们的输入法是动态链接库形式了。Ime 作为动态链接库,最终由 imm 负责调用和管理。 输入法根据用户编码的字典,即词库,翻译键盘事件对应的汉字或者字符 串。例如,自由拼音输入法得到是字符串是”ni”,那么查词库后,得到的字符是 “你 妮 尼 腻”等等。如果得到的字符串是”ni hao”,那么查词库后得到的字符 串是“你好” 。翻译出结果字符串后,输入法将结果字符串返回给 imm,imm 将字符串发送给 user.exe,user.exe 再讲字符串发送给当前获得输入光标的窗口 或者应用程序,从而完成输入过程。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 初中教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号