连接一个远程端口80(Http),Connect和Send都无任何问题,但就是无法相应
OnReceive虚拟函数,通过抓包器(Iris)看得清清楚楚,服务器已经回复,而且所有数据都正常,但是就是无法响应OnReceive函数,不知为何?
哪位高手指点迷津,必高分酬谢!

解决方案 »

  1.   

    CSocket:: AsyncSelect(FD_READ|FD_WRITE);
      

  2.   

    lovemaggic老兄,
    我试了,不是这个原因,因为我继承的是CSocket,缺省情况下相应所有的事件,另外,我也加上了这句话,可还是不行。同样一个类,在别的情况下都用得好好的。我又做了个测试,直接调用,就可以。
      

  3.   

    你到MFC源代码里去设断点跟踪不就知道了吗?从最下面跟起
      

  4.   

    [如果你没有超类CSocketWnd 的话]运行程序后,打开<SOCKCORE.CPP>文件,找到CAsyncSocket::DoCallBack 函数
    在switch (WSAGETSELECTEVENT(lParam)) 的case FD_READ:里设断点
    如果没到这里来的话,重装一下系统,还无效偶就没法了
    否则,看看是不是0==nBytes && 0==nErrorCode,跟到OnReceive 里面,看它调了哪个函数