VB中WinSock“当第一次连接后,即使拔掉网线,WinSock的状态还是表示已连接上。”这是winsock的缺陷, 你只能在应用层收,发数据,就是用winsock.senddata发数来发现接已经断了,或长时间无winsock.dataarrival事件就切断连接重新连接,或过一定的时间关掉连接(close),然后马上再连接, 刷新连接或“短连接” 来防止这种虚连接。
直接用timer控件,不断的判断winsock的state属性,
如果 winsock.state<>7 那就是没连接上了.
你可以增加一个专用连接,每隔5秒发送一个整数,对方收到该整数后加1再发回。如果时间过去10秒没有收到发回的数据则表示连接已断开或者有故障。
另外也可以用winsock的close事件来判断。
你是指对方是否接到连接信息吧?还是指网络是否正常?
如果是前这,可以在对方接到连接请求的时候,发送回一个信息!