| 网站首页 | 业界新闻 | 群组 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
共有 625 人关注过本帖
标题:多线程聊天工具--孙鑫老师的视频,接受数据出现问题
只看楼主 收藏
观海听潮
Rank: 1
等 级:新手上路
帖 子:14
专家分:5
注 册:2016-8-28
结帖率:50%
  已结贴   问题点数:10  回复次数:1   
多线程聊天工具--孙鑫老师的视频,接受数据出现问题
vs2012 消息响应函数出现了问题,在接收框内显示数据出现错误,若接受的是英文信息,就只有首字母,若是汉字信息,就是乱码

    CString str((char *)lParam);//接受到的数据
    MessageBox(LPCTSTR(str));    //测试时使用的,发现弹出的消息若是接受的是英文,就只有首字母,若是汉字,就是乱码

//接受数据的消息响应函数的实现
LRESULT CChatDlg::OnRecvData(WPARAM wParam, LPARAM lParam)//
{
    CString str((char *)lParam);//接受到的数据
    MessageBox(LPCTSTR(str));    //测试时使用的,发现弹出的消息若是接受的是英文,就只有首字母,若是汉字,就是乱码

    CString strTemp;//用于接受旧的数据
    //从控件中获取接收框内的文本
    GetDlgItemText(IDC_EDIT_RECV, strTemp);
   
    str += "\r\n";//加入一个换行,保留原来的聊天记录
    str = strTemp + str;
   
    SetDlgItemText(IDC_EDIT_RECV, str);//放回到接收的编辑框内

    return 0;
}
2017-08-07 21:13
hhzhuzw
Rank: 2
等 级:论坛游民
帖 子:2
专家分:10
注 册:2016-5-26
  得分:10 
问题好像出在 CString str((char *)lParam);//接受到的数据
2017-08-13 21:00







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.513156 second(s), 9 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved