MFC编写DLL 32位Release 出现 debug Assertion Failed
图片2
图片3
图1图2出错相关代码:
5
6
7
8
9
10
BOOL CAsyncSocket::AsyncSelect(long lEvent)
{
ASSERT(m_hSocket != INVALID_SOCKET);//第386行
_AFX_SOCK_THREAD_STATE* pState = _afxSockThreadState;
ASSERT(pState->m_hSocketWindow != NULL);//第389行
return WSAAsyncSelect(m_hSocket, pState->m_hSocketWindow,
WM_SOCKET_NOTIFY, lEvent) != SOCKET_ERROR;
}
图3出错相关代码:
mfc?断言失败? Assertion mfc 断言 野指针
_AFXWIN_INLINE HINSTANCE AFXAPI AfxGetInstanceHandle()
{ ASSERT(afxCurrentInstanceHandle != NULL);//第21行
return afxCurrentInstanceHandle; }
[解决办法]
线程同步的问题,再好好调试下。
[解决办法]
你 clientsocket Class 的继承来源 没说清楚
但你下方有提到 CAsyncSocket
估计有继承到 CAsyncSocket
基本上
CAsyncSocket 在 new 出来之后
务必呼叫 Create (…)
不能直接拿来用 ~