PC机上可以使用的WSAAsyncSelect,在WinCE上,使用EVC竟然没有该API,后来我采用LoadLibrary和GetProcAddress得到了隐藏的该函数调用接口,问题是,MS为什么把这个接口隐藏起来,难道WinCE的异步Socket处理还有问题?另外,用WSAAsyncSelect设置了socket的FD_WRITE事件,查了socket库函数资料,是说如下情况收到该消息:
(1)connect或者accept成功,即连接刚刚建立时产生
(2)当发送操作被阻塞,但是又重新可以发送时
我在PC机上试了,发现满足上述准则,但是在WinCE上,发现不满足上述第2条,我每发一条就收到一个FD_WRITE消息,这是为什么,WinCE上的库函数不遵循这个原则吗?

解决方案 »

  1.   

    但是我确实用了LoadLibrary和GetProcAddress得到了隐藏的该函数调用接口,试了一下可以用啊
      

  2.   

    我又发现,WinCE上的使用WSAAsyncSelect后,对流式套接字正常,如果用于数据报套接字,则有数据要接收时,无法收到FD_READ消息
      

  3.   

    何必非要用WSAAsyncSelect不可呢?不是自找麻烦么。
      

  4.   

    异步模式不是更好控制么
    WinCE上没有人用过WSAAsyncSelect?
      

  5.   

    有人清楚这个问题么,现在想用WSAAsyncSelect,但是担心WinCE上的实现有问题又不敢用