小弟刚接触网络编程不久,最近碰到一个问题不太明白,还请大虾们出手相救,分数少了点,大家别介意。
问题是MSDN中并没有提供CSocket类的函数的说明,就是说我现在要用这个类的几个函数,如connect,recieve,send,我怎么判断我的调用有没有成功?我知道用CAsyncSocket类的成员函数时可以这样判断
if(asyncSocket.connect()==-1)
{MessageBox("ERROR");
},因为它是异步的,可以不用管返回值,而CSoket又应该怎样处理喃?

解决方案 »

  1.   

    SDK:如果返回值为SOCKET_ERROR
    可以调用WSAGetLastError()获得错误码
      

  2.   

    SOCKET_ERROR被定义为-1,这个是在sdk中进行判断的,不能在csocket类中使用啊!晕啊~,另外还又个问题,怎么设置connect的超时啊?
      

  3.   

    Nonzero if the function is successful; otherwise 0, and a specific error code can be retrieved by calling GetLastError
      

  4.   

    http://blog.csdn.net/lyzhm/archive/2006/11/24/1411950.aspx
      

  5.   

    楼上的大哥找的是socket的连接超时方法,对于CSocket类来说不灵的,期待高手出现!