很简单的线程调用出错的问题,解决立刻给分,谢谢

albert1k 2004-12-23 12:00:05
调用
if(dlg.DoModal()==IDOK)
{
m_sGetPath=dlg.GetPathName();
UpdateData(FALSE);

AfxBeginThread(SendDataThread,this,THREAD_PRIORITY_NORMAL);
}
线程函数
UINT SendDataThread(LPVOID lpParam)
{
return 0;
}
错误提示
D:\sockettest\host\hostDlg.cpp(477) : error C2665: 'AfxBeginThread' : none of the 2 overloads can convert parameter 1 from type 'unsigned int (void *)'
...全文
134 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
oyljerry 2004-12-23
  • 打赏
  • 举报
回复
线程函数为静态成员函数,
leecyi 2004-12-23
  • 打赏
  • 举报
回复
UINT SendDataThread(void lpParam)
{
return 0;
}
老夏Max 2004-12-23
  • 打赏
  • 举报
回复
unsigned __stdcall SendDataThread(LPVOID lpParam)
{
return 0;
}
SatanLi1982 2004-12-23
  • 打赏
  • 举报
回复


UINT __cdecl SendDataThread(LPVOID lpParam)
{
return 0;
}
hjunxu 2004-12-23
  • 打赏
  • 举报
回复
AfxBeginThread(SendDataThread,this,THREAD_PRIORITY_NORMAL);
改成
AfxBeginThread(SendDataThread,(LPVOID)this,THREAD_PRIORITY_NORMAL);
试试。
hjunxu 2004-12-23
  • 打赏
  • 举报
回复
你是不是还有另外一个函数叫做SendDataThread啊?
hjunxu 2004-12-23
  • 打赏
  • 举报
回复
不知道要不要加上WINAPI这种修饰的
HunterForPig 2004-12-23
  • 打赏
  • 举报
回复
UINT SendDataThread(LPVOID lpParam)
你是不是把它定义在类里面了
如是在类里面要设置为静态成员函数,
要不,就把定义移到类外!
albert1k 2004-12-23
  • 打赏
  • 举报
回复
都试了呀,不好使呀,麻烦大哥们再给看看啊!

15,467

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧