C# TCP/IP程序C/S方式无法连接服务器的问题解决方法之一

昨天下午工厂测试产线上线了新的笔记本整机(WIN10 177663),测试笔记本时,发现笔记本中的TCP/IP客户端无法连接测试主机的服务端程序(TCPListener/TCPClinet)。但是在安装有WIN10 17134的笔记本中,程序一切正常。

以下为我排查思路:

1.检查新笔记本防火墙是否已经关闭。——已经关闭

2.检查到网络连接模式为公共网络。——改为专用网络

在新笔记本中先用程序源码调试查看了一下,发现在客户端连接服务端后,在客户端获取连接的远程IPEndPoint时出错,而在老笔记本中获取正常。根据报错信息“the system detected an invalid pointer address in attempting to use a pointer argument in a call“,“system.net.sockets.socketexception 0x80004005”,百度了好久,没有找到合适的答案。

3.用友善串口调试助手中的网络调试工具,测试TCP/IP客户端服务端通讯正常。——自己的软件可能有问题。

4.同事无意间使用 “网络适配器” 右键属性菜单中的“诊断”功能,诊断之后,没有发现问题,仍然重置了一下网络适配器。

经过这个诊断修复之后,程序可以正常通讯了。

 

总结:

1.上述第4条中,诊断之后,检测到问题就修复,没有检测到问题,就继续重置一下适配器。

2.在系统升级前网络通讯一直正常,升级系统后通讯不正常的,可以先重置一下网络适配器,或者有没用的虚拟网络适配器也可以先禁用。

3.之前一直正常运行的程序,在外部情况发生变化后出问题,先一步步排除外部影响因素,最终再查源码,排除问题。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值