PIME
通过文本服务框架轻松实现Windows输入法:
- LibIME 包含一个旨在成为Windows文本服务框架(TSF)简单封装的库。
- PIMETextService 包含使用libIME的Windows文本服务的骨架实现。
- Python服务器部分需要Python 3.x和pywin32包。
所有部分均采用GNU LGPL v2.1许可证。
开发
工具要求
- CMake >= 3.0
- Visual Studio 2019
- git
如何构建
-
从GitHub获取源代码。
git clone https://github.com/EasyIME/PIME.git cd PIME git submodule update --init
-
使用以下CMake命令生成Visual Studio项目。
cmake -G "Visual Studio 16 2019" -A Win32 <PIME源文件夹路径> cmake -G "Visual Studio 16 2019" -A x64 <PIME源文件夹路径>
-
用Visual Studio打开生成的项目并构建。
TSF参考
- 文本服务框架
- IME开发指南和清单(Windows Store应用)
- 输入法编辑器(Windows Store应用)
- 第三方输入法编辑器
- Windows 8 UI和Windows 8桌面之间的应用通信策略
- TSF Aware、听写、Windows语音识别和文本服务框架。(博客)
- 适用于Windows Store应用的Win32和COM
- 支持Windows 8的输入法编辑器(IME)示例
Windows ACL(访问控制列表)参考
- Windows访问控制模型第1部分
- Windows访问控制模型:第2部分
- Windows 8应用容器安全说明 - 第1部分
- AccessCheck的工作原理
- GetAppContainerNamedObjectPath函数(使用ACL启用访问应用容器外的对象)
- 创建DACL
安装
-
将
PIMETextService.dll
复制到C:\Program Files (X86)\PIME\x86\。 -
将
PIMETextService.dll
复制到C:\Program Files (X86)\PIME\x64\。 -
将
python
文件夹复制到C:\Program Files (X86)\PIME\
。 -
将
node
文件夹复制到C:\Program Files (X86)\PIME\
。 -
使用
regsvr32
注册PIMETextService.dll
。64位系统需要同时注册32位和64位的PIMETextService.dll
。regsvr32 "C:\Program Files (X86)\PIME\x86\PIMETextService.dll"(以管理员身份运行) regsvr32 "C:\Program Files (X86)\PIME\x64\PIMETextService.dll"(以管理员身份运行)
-
注意:
regsvr32
命令需要以管理员身份运行。否则会出现拒绝访问错误。 -
在Windows 8中,如果将dll放在C:\Windows或C:\Program Files以外的位置,它们将无法在Metro应用中访问。
卸载
-
使用
regsvr32
取消注册PIMETextService.dll
。64位系统需要同时取消注册32位和64位的PIMETextService.dll
。regsvr32 /u "C:\Program Files (X86)\PIME\x86\PIMETextService.dll"(以管理员身份运行) regsvr32 /u "C:\Program Files (X86)\PIME\x64\PIMETextService.dll"(以管理员身份运行)
-
删除
C:\Program Files (X86)\PIME
-
注意:
regsvr32
命令需要以管理员身份运行。否则会出现拒绝访问错误。
错误报告
请在此处报告任何问题。