我有用于发送和接收短信的Sever-Client应用程序,直到上个月工作正常。但之后我得到了TCP / Ip套接字异常。我调试服务器应用程序并发现异常:
System.IO.IOException:无法从传输连接读取数据:远程主机强行关闭现有连接。 ---> System.Net.Sockets.SocketException:远程主机强制关闭现有连接 在System.Net.Sockets.Socket.EndReceive(IAsyncResult asyncResult) 在System.Net.Sockets.NetworkStream.EndRead(IAsyncResult asyncResult)
当我调试更多时,我在客户端上遇到了同样的异常。 我经历了许多与此类似的线程,人们认为这是与网络相关的问题,如防火墙/ NAT /防病毒阻塞端口,由于客户端和防火墙之间的这种连接。服务器得到打扰。 我使用2999端口,多个客户端在同一端口上与服务器通信。 有线索吗?究竟是什么原因?
答案 0 :(得分:1)
这种情况现在一直发生还是偶尔发生?如果它只是偶尔发生我会做什么是把它放在一个try catch语句中,当这个错误被抛出时重新连接并再次尝试并记录它发生的时间,以及当它被抛出时所发生的一切你可以回过头来找出问题是什么,当你得到更多的信息时,它被抛出。如果它一直在发生,那么强迫你的连接关闭女巫可能是一个防火墙,所以为了测试我会关掉你所有的防火墙和防病毒软件。