关于connect连接报错10035的问题,

时间:2020-12-04 20:30:49
俺初涉CAsyncSocket,建立了两个对话框工程,一个是服务器端,一个是客户端,服务器端建立socket成功,监听也成功,客户端建立socket成功,可是连接服务器失败,服务器端的ip地址是本机127.0.0.1,客户端主要code如下:
BOOL bFlag2=m_clientsock.Connect("127.0.0.1",1027);
int nErrorCode = m_clientsock.GetLastError();

结果nErrorCode=10035

各位大虾,帮帮忙啊,俺好着急呢

4 个解决方案

#1


10035的含义是:无法立即完成一个非阻挡性套接字操作。
我觉得这好像没什么问题。
另外,你怎么不先判断bFlag2是否成功就直接调用GetLastError?

#2


我判断过bFlag2,返回0,所以GetLastError,不过我不知道是不是10035错误不会产生问题

#3


唉,异步的东东就是麻烦,兄弟也吃不准,帮你up。。。

#4


异步的socket经常会返回WSAEWOULDBLOCK错误,表示该操作没有立刻成功!
如果使用CAsyncSocket并将FD_CONNECT关联(默认),那么connect真正成功之后会自动调用OnConnect函数,你只需重载该函数就行了

WSAEWOULDBLOCK错误返回是正常的,不用管它!

#1


10035的含义是:无法立即完成一个非阻挡性套接字操作。
我觉得这好像没什么问题。
另外,你怎么不先判断bFlag2是否成功就直接调用GetLastError?

#2


我判断过bFlag2,返回0,所以GetLastError,不过我不知道是不是10035错误不会产生问题

#3


唉,异步的东东就是麻烦,兄弟也吃不准,帮你up。。。

#4


异步的socket经常会返回WSAEWOULDBLOCK错误,表示该操作没有立刻成功!
如果使用CAsyncSocket并将FD_CONNECT关联(默认),那么connect真正成功之后会自动调用OnConnect函数,你只需重载该函数就行了

WSAEWOULDBLOCK错误返回是正常的,不用管它!