小弟在 activex exe中加了winsock控件,发送数据目前没有问题,但是接收数据老是不会触发DataArrival这个,请问还有哪里需要注意的?

解决方案 »

  1.   

    看你什么协议,如果是udp,只要侦听端口后,如果有对应端口的udp数据过来,会直接触发DataArrival事件,如果是tcp服务器端,侦听后必须在ConnectionRequest事件触发时决定是否与其相连,如果对方不是你禁止相连的IP,你就用Accept方法捆绑ConnectionRequest事件传递过来的套接字,注意,使用Accept方法前先Close一下再Accept,这样只要客户端发数据过来,服务器端就会触发DataArrival事件。对于tcp客户端,只要连接后产生过Connect事件,如果有服务器端数据过来,就会触发DataArrival事件。当然,这种网络操作可能会受到系统安全设置或防火墙之类的东西影响,你最好先确定是否连接成功再去看别的问题。