急!关于CSocket线程传SOCKET句柄的问题~

KID_coder 2011-02-28 09:23:05

ListenSocket.Listen();
CSocket* pSvr;
pSvr = new CSocket;
if ( !ListenSocket.Accept(*pSvr) )
{
AfxMessageBox(_T("链接错误!"));
}
....
SOCKET hSocket = pSvr->Detach(); //分离句柄
delete pSvr;
_beginthreadex( 0, 0, &SendFileThread, (LPVOID)hSocket, NULL, NULL );


unsigned int WINAPI SendFileThread(LPVOID lParam)
{
SOCKET hSocket = (SOCKET)lParam;
CSocket *pSendSock;
pSendSock = new CSocket;
pSendSock->Create();
pSendSock->Attach(hSocket); //附加
....
}

在sockcore.cpp
指向这一条~
if (pState->m_pmapSocketHandle->IsEmpty())

以上错误在“在静态库中使用 MFC”时产生~
而“在共享 DLL 中使用 MFC”却没有~ 什么原因?
会的快点来求救呀~~ 解决立即给分~
...全文
103 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
oyljerry 2011-03-01
  • 打赏
  • 举报
回复
CSocket依赖于MFC,你修改连接方式,可能会有影响.
Eleven 2011-03-01
  • 打赏
  • 举报
回复
指向代码中的哪一行?怎么不用winsock API去写,咋都喜欢CSocket类,封装也不怎么样
青稞 2011-03-01
  • 打赏
  • 举报
回复
除了界面用MFC,其余基本使用STL和API呵呵。。
Zimmerk 2011-03-01
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 visualeleven 的回复:]
指向代码中的哪一行?怎么不用winsock API去写,咋都喜欢CSocket类,封装也不怎么样
[/Quote]
同意,现在转用API,将来使用SOCKET无痛~~~
haogeai123 2011-02-28
  • 打赏
  • 举报
回复
请谅解我没看懂你要表达的意思。
帮顶一个吧!

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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