VC6开发的多线程DLL,将DLL代码直接加在VC中使用没问题。
VB6,VC6调用异常
测试是在同一电脑下启动SERVER和CLIENT线程实现连接异常状况为:1.若我先启动服务端线程监听端口没问题,但我启动客户端线程后异常退出。我分析后发现在执行sockClient.Create();时异常的2.我先启动客户端线程后启动服务端线程后异常退出。我分析后发现在执行sockServer.Create(4002);时异常的.异常时提示框为:Microsofte Visual C++ Library
program:.....某某.exe
abnormal program termination在两台机上分别运行服务端和客户端没问题为何啊!
VB6,VC6调用异常
测试是在同一电脑下启动SERVER和CLIENT线程实现连接异常状况为:1.若我先启动服务端线程监听端口没问题,但我启动客户端线程后异常退出。我分析后发现在执行sockClient.Create();时异常的2.我先启动客户端线程后启动服务端线程后异常退出。我分析后发现在执行sockServer.Create(4002);时异常的.异常时提示框为:Microsofte Visual C++ Library
program:.....某某.exe
abnormal program termination在两台机上分别运行服务端和客户端没问题为何啊!
{
if (!AfxSocketInit())
{
AfxMessageBox("Server初始化失败");
return FALSE;
} CSocket sockClient; sockClient.Create(); if( !sockClient.Connect("192.168.0.111",4002))
{
AfxMessageBox("Socket连接失败");
return FALSE;
}
else
TRACE( "客户端与服务器已建立连接\n"); do
{ } while(1); sockClient.Close(); return 0;
}
UINT CInterface::ThreadedServer(LPVOID lParam)
{
if (!AfxSocketInit())
{
AfxMessageBox("Server初始化失败");
return FALSE;
} CSocket m_Server; if(!m_Server.Create(4002))
{
AfxMessageBox("Listen Socket create error");
return 0;
} if(!m_Server.Listen())
{
AfxMessageBox("m_server.Listen ERROR");
return 0;
} CSocket sockConnection; if(! m_Server.Accept(sockConnection))
{
AfxMessageBox("Socket接受连接失败");
return FALSE;
}
else
TRACE( "服务端接受客户端连接\n"); m_Server.Close(); while(1)
{
}
sockConnection.Close(); return 0;
}即使我把程序改成这样还是会有异常退出