调用动态链接库创建socket对象时失败!求!该如何处理
调用动态链接库创建socket对象时失败!!!!急求!
动态库大意是一个用于网络查询的对话框,对话框初始化的时候要创建一个socket对象,代码如下:
m_pSock=new SockClient(this);
if (!m_pSock-> Create())
{
AfxMessageBox( "Socket创建失败!!!!!! ");
m_bSvrState=false;
}
else
{
if(!m_pSock-> Connect(strSvrAddress, nPort))
{
AfxMessageBox( "Socket连接失败 ");
m_bSvrState=false;
}
else
{
m_bSvrState=true;
m_pSock-> Initialize(); //初始化CSocket中的变量
}
}
我也设定了一个导出函数:
extern AFX_EXTENSION_MODULE DataClientDLL;
#ifdef PNS_IMPL
#define MYDECLARE_PNS _declspec(dllexport)
#else
#define MYDECLARE_PNS _declspec(dllimport)
#endif
extern MYDECLARE_PNS SockClient *m_pSock;
但是在调用这个dll时,弹出“Socket创建失败!!!!!!”,
PS:我已经设置了一个指针来调用对话框,但是一直没有办法在创建对话框的时候创建socket;
实在不知道为什么,请各位大虾帮帮忙,谢谢啦!!
------解决方案--------------------
BOOL CYourDllApp::InitInstance()
{
CWinApp::InitInstance();
AFX_MANAGE_STATE(AfxGetStaticModuleState());
if(!AfxSocketInit())
AfxMessageBox( "Failed to Initialize Sockets ",MB_OK| MB_ICONSTOP);
return TRUE;
}
动态库大意是一个用于网络查询的对话框,对话框初始化的时候要创建一个socket对象,代码如下:
m_pSock=new SockClient(this);
if (!m_pSock-> Create())
{
AfxMessageBox( "Socket创建失败!!!!!! ");
m_bSvrState=false;
}
else
{
if(!m_pSock-> Connect(strSvrAddress, nPort))
{
AfxMessageBox( "Socket连接失败 ");
m_bSvrState=false;
}
else
{
m_bSvrState=true;
m_pSock-> Initialize(); //初始化CSocket中的变量
}
}
我也设定了一个导出函数:
extern AFX_EXTENSION_MODULE DataClientDLL;
#ifdef PNS_IMPL
#define MYDECLARE_PNS _declspec(dllexport)
#else
#define MYDECLARE_PNS _declspec(dllimport)
#endif
extern MYDECLARE_PNS SockClient *m_pSock;
但是在调用这个dll时,弹出“Socket创建失败!!!!!!”,
PS:我已经设置了一个指针来调用对话框,但是一直没有办法在创建对话框的时候创建socket;
实在不知道为什么,请各位大虾帮帮忙,谢谢啦!!
------解决方案--------------------
BOOL CYourDllApp::InitInstance()
{
CWinApp::InitInstance();
AFX_MANAGE_STATE(AfxGetStaticModuleState());
if(!AfxSocketInit())
AfxMessageBox( "Failed to Initialize Sockets ",MB_OK| MB_ICONSTOP);
return TRUE;
}