社区
进程/线程/DLL
帖子详情
LPVOID参数转换?
sjerpy
2004-12-21 10:19:34
typedef struct
{
SOCKET sClient;
DWORD dwIP;
}ClientInfo;
ClientInfo *client =new ClientInfo;
AfxBeginThread(ClientCommand,(LPVOID)client ) ///???/改怎么转成LPVOID啊?
...全文
188
8
打赏
收藏
LPVOID参数转换?
typedef struct { SOCKET sClient; DWORD dwIP; }ClientInfo; ClientInfo *client =new ClientInfo; AfxBeginThread(ClientCommand,(LPVOID)client ) ///???/改怎么转成LPVOID啊?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sjerpy
2004-12-22
打赏
举报
回复
DWORD ThreadID;
HANDLE htmp=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)ClientCommand,(LPVOID)client,CREATE_SUSPENDED,&ThreadID);
这样可以.
CreateThread和AfxBeginThread有什么区别啊?
sjerpy
2004-12-22
打赏
举报
回复
static UINT WINAPI ClientCommand(LPVOID lpParam);
UINT WINAPI CServerJob::ClientCommand(LPVOID lpParam)
{
return 1;
}
这样定义为什么不可以啊?
qqxia
2004-12-22
打赏
举报
回复
传递指针,不要传递类对象,呵呵
BigFanOfCpp
2004-12-22
打赏
举报
回复
是你的第一个参数的问题,应该传进去原型为UINT Fun(LPVOID lp);类型的函数才对.
看看你的ClientCommand定义.
sjerpy
2004-12-22
打赏
举报
回复
可是有问题啊
E:\测试程序\ThreadTest\ServerJob.cpp(110) : error C2665: 'AfxBeginThread' : none of the 2 overloads can convert parameter 1 from type 'unsigned int (void *)'
oyljerry
2004-12-22
打赏
举报
回复
CreateThread对于跨线程传递mfc对象,容易出错
oyljerry
2004-12-22
打赏
举报
回复
AfxBeginThread是mfc封装类,比较好用
EnochShen
2004-12-21
打赏
举报
回复
你已经转换了
typedef struct
{
SOCKET sClient;
DWORD dwIP;
}ClientInfo;
UINT ClientCommand(LPVOID lpParam)
{
ClientInfo *pClientInfo = (ClientInfo*)lpParam;
return 0;
}
{
ClientInfo *client =new ClientInfo;
AfxBeginThread(ClientCommand,(LPVOID)client );
}
CString和
LP
VOID
的
转换
(线程
参数
传递) .
网上找到很多结果,中文的,外文的。像codeproject,stackoverflow等等,看到的结果都不能解决问题。 自己动手,丰衣足食。 msdn上说,CString可以用来随意替换const char* and
LP
CTSTR 类型的函数形参。随意
转换
就是了。具体不深究,解决问题先。 声明一下使用目的:给新开线程传入CString类型字符串值,但AfxBeginThread函数需要传入
CSTRING与
lp
void
之间的
转换
/////////////////////////////////////////////////////////////////////////////////
//功能:将
LP
VOID
类型的变量
转换
为CString类型
//
参数
:
LP
VOID
类型的指针
//返回值:
转换
后的CString类型
//////////////////////////////////////////////////////////////////////////
C
AfxBeginThread第二个
参数
LP
VOID
pParam的使用
今天使用AfxBeginThread()中第个
参数
LP
VOID
pParam的使用
CreateThread函数,无法将
参数
3 从“DWORD (__cdecl *)(
LP
VOID
)”
转换
为“
LP
THREAD_START_ROUTINE” PVZCheater
问题: “HANDLE CreateThread(
LP
SECURITY_ATTRIBUTES,SIZE_T,
LP
THREAD_START_ROUTINE,
LP
VOID
,DWORD,
LP
DWORD)”: 无法将
参数
3 从“DWORD (__cdecl *)(
LP
VOID
)”
转换
为“
LP
THREAD_START_ROUTINE” PVZCheater 解决方法: 选debug模式,然后将x86改为x64 ...
CString和
LP
VOID
的
转换
(线程
参数
传递)
msdn上说,CString可以用来随意替换const char* and
LP
CTSTR 类型的函数形参。随意
转换
就是了。具体不深究,解决问题先。 声明一下使用目的:给新开线程传入CString类型字符串值,但AfxBeginThread函数需要传入
LP
VOID
类型
参数
。于是,矛盾开始了。 static CString s=_T("640x480_3.jpg");//如果函数内,一
进程/线程/DLL
15,471
社区成员
49,182
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章