设备上运行的智能设备 Winsock 服务器收到 OnConnect 回调通知

3.16   设备上运行的智能设备 Winsock 服务器收到 OnConnect 回调通知   
智能设备套接字服务器实现使用面向 WinCE 的 CSocket 或 CasyncSocket 实现 OnConnect() 和 OnAccept() 方法。当客户端与设备中寄宿的此服务器建立连接时,服务器将同时收到 OnAccept() 和 OnConnect() 通知。

解决此问题的方法 

为避免在服务器中收到 OnConnect() 通知,请执行以下操作

在服务器套接字上调用 Accept() 之前

1. 使用订阅服务器套接字的事件调用 AsyncSelect 方法。即,如果“socket”是服务器套接字的对象,则调用
    socket.AsyncSelect(FD_READ | FD_WRITE | FD_OOB | FD_ACCEPT | FD_CLOSE);
请注意,除 FD_CONNECT 之外,所有事件均用于在服务器中显式屏蔽 Connect 事件。

2. 如果需要服务器套接字屏蔽其他事件,则请使用服务器套接字适用的特定事件列表,例如,如果服务器套接字不希望接收读取操作事件,则还应在调用 AsynchSelect 方法时从事件列表中移除 FD_READ,如  


    socket.AsyncSelect(FD_WRITE | FD_OOB | FD_ACCEPT | FD_CLOSE);


以屏蔽 FD_CONNECT 和 FD_READ 事件。

请参考
http://msdn.microsoft.com/librar ... a3a.asyncselect.asp  获取 ASyncSelect 方法行为的完整说明。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值