4168|7

72

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

关于线程函数CreateThread中参数的问题 [复制链接]

大哥大姐们好~!
    我在EVC中,想用CreateThread()这个函数创建一个线程。我程序是这样字写的
    hReadThread = CreateThread(0,0,ReadThread,this,0,&m_dwReadThreadID);
    其中,hReadThread是HANDLE类型.我定义ReadThread这个函数为以下
     DWORD CComTestDlg::ReadThread(LPVOID lparam)
    {
        .....
    }
    但是在我编译时,编译器报出了如下错误:
     error C2664:'CreateTgread':cannot convert parameter 3 from 'unsigned long (void *)'to'unsigned long(_cdecl *)(void *)'
    请问这是什么原因?是因为我的操作系统定制不对,sdk没打对,还是因为什么原因造成的?
     谢谢,我信誉好,一定给分!

最新回复

请问comiscience具体是怎么解决的啊,我也遇到这个问题,很头疼: void readprocess::OnRRead() {            hThread=CreateThread(NULL,                 0,                 readprocess::ReceiveThread,                 this,                 0,                 &ThreadID); } readprocess::ReceiveThread定义如下: DWORD WINAPI readprocess::ReceiveThread(LPVOID  lparam, readprocess* pDLG ); EVC编译报错: error C2664: 'CreateThread' : cannot convert parameter 3 from 'unsigned long (void *,class readprocess *)' to 'unsigned long (__cdecl *)(void *)'         None of the functions with this name in scope match the target type   详情 回复 发表于 2009-2-8 19:09
点赞 关注

回复
举报

55

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
就是一般语法错误。
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
static DWORD   ReadThread(LPVOID   lparam) ;
 
 
 

回复

85

帖子

0

TA的资源

一粒金砂(初级)

4
 
错误已经说的很清楚了,CreateThread的第三个参数有问题
 
 
 

回复

60

帖子

0

TA的资源

一粒金砂(初级)

5
 
恩~谢谢lenux了~在你回答问题前,我已经解决了。。。不过还是要给你加分~
 
 
 

回复

57

帖子

0

TA的资源

一粒金砂(初级)

6
 
其实就是个静态和结构的问题
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(中级)

7
 
定义一个结构,让很多的数据传参进去
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

8
 
请问comiscience具体是怎么解决的啊,我也遇到这个问题,很头疼:

void readprocess::OnRRead()
{   
        hThread=CreateThread(NULL,
                0,
                readprocess::ReceiveThread,
                this,
                0,
                &ThreadID);
}

readprocess::ReceiveThread定义如下:

DWORD WINAPI readprocess::ReceiveThread(LPVOID  lparam, readprocess* pDLG );

EVC编译报错:

error C2664: 'CreateThread' : cannot convert parameter 3 from 'unsigned long (void *,class readprocess *)' to 'unsigned long (__cdecl *)(void *)'
        None of the functions with this name in scope match the target type
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表