欢迎阅读指正和转载,但请尊重原作者的工作,转载时请务必注明转载自:www.xionggf.com
 
IME编程的一些备忘
 
当工程的“所使用字符集”设置为基于UNICODE时,Windows发过来的WM_CHAR消息,所携带的wParam参数,就是该字符的unicode值。如果是基于MBCS的话,那么,当发送中文字符的时候,在GBK编码方式下,会依次发两个小于255的wParam参数过来。其中至少有一个字节的值是大于126的,只要把此两个值当作一个16位WORD的高低字节,组合成一个WORD便得到该中文字符的字符编码(注意不是该字符的UNICODE值)。
 
使用IME输入法时,如果响应了WM_IME_CHAR消息的话,Windows将不会发WM_CHAR过来。google输入法可以以WM_IME_CHAR消息的形式发送中文标点符号字符,但是极品五笔不行。所以如果要做兼容极品五笔输入法的话,需要相应WM_CHAR消息。