VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 125|回复: 0

[课后作业] PostMessage方式发送消息不乱码

[复制链接]
99_avatar_middle
最佳答案
1 
online_vip 发表于 2020-8-9 14:01:03 | 显示全部楼层 |阅读模式
不知道作业这个对不对,发上来等大神指点下.
思路是既然他是应为异步提前释放的,那如果生命一个全局的class类,那么手动赋值,手动释放.是不是就能解决,经过尝试,的确是解决了,只是感觉是不是自己的方法比较笨且麻烦
我的方法步骤
1  头文件里声明一个类,并写了一个构造函数
  1. class CStringLS {
  2. public:
  3.         CString m_path;
  4.         CStringLS(CString str) {
  5.                 m_path = str;
  6.         }
  7. };
复制代码
2 获取路径把获得路径穿给新申请的类对象
  1.                                 CString strPath = mFinder.GetFilePath();
  2.                                 CStringLS* LPpath = new CStringLS(strPath);
  3.                                 PostMessage(pitem->m_mianhwnd, WM_ADD_ITEM,0, (LPARAM)LPpath);//发送消息
复制代码
3 消息接收的时候获取类对象,操作完后释放
  1. LRESULT CMFCCThread8Dlg::OnAddItem(WPARAM w_Param, LPARAM lParam) //消息响应函数的实现
  2. {
  3.         CStringLS* strpath = (CStringLS*)lParam;
  4.         m_ResultLise.InsertItem(0, strpath->m_path);
  5.         delete strpath;//释放pitem对象
  6.         return TRUE;
  7. }
复制代码







上一篇:第09课 多线程编程综合实例2 | 课程代码
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

×【发帖 友情提示】
1、请回复有意义的内容,请勿恶意灌水;
2、纯数字、字母、表情等无意义的内容系统将自动删除;
3、若正常回复后帖子被自动删除,为系统误删的情况,请重新回复其他正常内容或等待管理员审核通过后会自动发布;
4、感谢您对VC驿站一如既往的支持,谢谢合作!

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号 )|网站地图wx_jqr

GMT+8, 2020-12-1 11:26

Powered by CcTry.CoM

© 2009-2020 cctry.com

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