急!急!急!高手们快救救我!!!(CSocket)
我定义一个CSocket对象,但是调用CREATE时有问题:
int ie;
CString str;
CSocket m_sock;
if(!m_sock.Create())
{
ie=m_sock.GetLastError ();
str.Format ("%d",ie);
MessageBox(str);
}
消息框提示10093(WSANOTINITIALISED)错误,是说在调用CREATE前,要先调用AfxSocketInit()函数。
但我看书上都未调用它呀,请问是怎么一回事?应该怎样写代码??
急!急!急!
问题点数:30、回复次数:6Top
1 楼nichang(nichang)回复于 2001-08-21 17:08:46 得分 5
先调用AfxSocketInit()就行了。Top
2 楼jamesye78(江月)回复于 2001-08-21 17:16:29 得分 10
书上可能是开始的时候选择了支持socket.这样向导就自动生成了调用
AfxSocketInit()的代码.Top
3 楼zhaoyao73(小赵)回复于 2001-08-21 17:16:53 得分 10
在你用向导生成程序的时候,大概第3,4页上提示是否用windows socks,选上后,自动加上
AfxSocketInit(),在app的init中
BOOL CSockMailApp::InitInstance()
{
if (!AfxSocketInit())
{
AfxMessageBox(IDP_SOCKETS_INIT_FAILED);
return FALSE;
}
Top
4 楼WhiteWaterBlueSky(花之雨)回复于 2001-08-21 17:20:05 得分 5
推荐在应用程序类的InitInstance方法中初始化socket库,AfxSocketInit()!
Top
5 楼pfans(pfans)回复于 2001-08-22 08:38:20 得分 0
谢谢楼上的!再问一问:
是只对CSocket和CAsyncSocket类才调用AfxSocketInit()吗?
对CInternetSession类呢?Top
6 楼pfans(pfans)回复于 2001-08-23 09:12:09 得分 0
没人知道吗?Top




