看流星社区

 找回密码
 注册账号
查看: 2201|回复: 0

[VC++]PostMessage,WM_CHAR消息发送中文

[复制链接]

该用户从未签到

发表于 2016-9-11 17:59:08 | 显示全部楼层 |阅读模式

在Windows2000系统下发送字符消息(WM_CHAR)时

如果字符是一个汉字,则该字符对应的虚拟键盘码高位不为0,这样得到的字符就不正确。

解决办法是做一个“与”运算: ch & 0xFF就可以了。

应用,果然可以。。。

CWnd *pWnd=FindWindow(NULL,"记事本");
HWND hwnd = pWnd->GetSafeHwnd();
char str[] = "这是一句话,Hello PostMessage!";
for(int i=0 ; i<strlen(str) ; i++)
{
:ostMessage(hwnd,WM_CHAR,str[i] & 0xFF,0);
}
点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2024-3-19 12:30

Powered by Kanliuxing X3.4

© 2010-2019 kanliuxing.com

快速回复 返回顶部 返回列表