中易网

(MFC编程)线程函数调用UpdateData崩溃

答案:1  悬赏:0  
解决时间 2021-03-12 07:00
线程函数定义如下(声明略):其中m_print_msg是输入框对应的变量 UINT myThreadFunc(LPVOID lparam){ Cclient_mfcDlg *DlgPtr=(Cclient_mfcDlg*)lparam; DlgPtr->UpdateData(true);//如果用线程,这句会崩 DlgPtr->m_print_msg+="1";//这句不会崩 DlgPtr->UpdateData(false);//如果用线程,这句会崩 return 0; } 这是开启线程的部分:只要一点按钮OK就会崩溃 void CxxxDlg::OnBnClickedOk() { ... AfxBeginThread(myThreadFunc,(LPVOID)this,0,0,0,0);//会崩溃,显示Debug Assertion Failed错误(这很笼统,没有说明是什么问题) //myThreadFunc(this);//如果不用线程,而是像这样直接调用函数不会崩溃,能达到效果,显示出“1” } 注:1.这个程序必须用多线程,因为以后线程里要加上网络通信的代码,这里只是简化的版本 2.尽量不发消息;如果必须要,请注明具体方法
最佳答案
我的经验,我定义了一个结构,在结构里面定义对话框指针,对话框指针赋值给结构变量里面的对话框指针,然后把结构指针传递给myThreadFunc函数,这样就可以在线程理使用。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
Q3卤素灯改氙气灯和led 4s点分别需要多少钱
澳门 的公交车接受港币吗
金都渔具商店这个地址在什么地方,我要处理点
果树怎么施肥 刚种的果树可以施肥吗
A31.4T是干式双离合还是湿式双离合
xx弈弈、出x入x 鸡x狗x xx如x
精英人群云南公务员体检费用是多少?
电影中带魔鬼的 一个班车顶被削了 只有一个女
福安康中老年人残病人专营店仙游总店地址在什
奔驰c200运动款木纹中控饰板哪有卖
怎么我现在续费黄钻需要手机验证码!怎么有效
做好直销为什么要放弃熟人市场?
基础笩板算建筑面积吗
长虹家电怎么样?
振动筛专用振动电机的特点有哪些
推荐资讯
沫 换偏旁
房屋免租期和无租使用如何缴纳房产税
小米5和魅族PRO5哪个好
速生艳红紫薇一亩地可种多少棵?
cf 手游生化酒店卡分被封了吗?
华为荣耀9菜单 是红色如何调好
赛易驰数码快印在哪里啊,我有事要去这个地方
东润电器行新兴专卖店地址有知道的么?有点事
鲁诚农业科技连锁总店这个地址在什么地方,我
UG4.0的许可证为什么卸载不了。6.0的也安装不
128G固态硬盘+2*2TB3.5寸硬盘组成RAID5
温州海味饭店在什么地方啊,我要过去处理事情
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?