明明有客户端请求但是,服务器端却总是监听不到请求

计算机网络 TOMORROW 2年前 (2017-05-20) 1272次浏览 1个评论 扫描二维码

这些天由于项目(基于 C#)需要移植了一个服务器功能,困扰了我足足一整天。

为了开启服务器监听功能新建了一个线程,在该线程里的主要代码:


server = new TcpListener(_ipAddr, TCP_Port);
server.Start();
while (true)
{
   if (server.Pending())
   {
		/***************/
   }
}

用原来的例程测试的时候是一直都可以监听到请求进入到 if 里面的;然而移植之后的代码,运行一切正常,却死活监听不到请求进不去 if。

把 IP、端口、引用、甚至.net 的版本等问题都考虑过,始终是找不到问题所在。

在我将要放弃的时候在防火墙里允许了所有的 vshost32.exe ,然后就成功解决了。

其实一开始的时候也有考虑到 Windows 防火墙的问题,但那时候只是允许了该工程 exe,并没有想到竟然是 vshost32.exe 的问题。

然后把所有的 vshost32.exe 都允许通过防火墙,或者把防火墙完全关闭就把问题解决了。


TOMORROW 星辰 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:明明有客户端请求但是,服务器端却总是监听不到请求
喜欢 (0)
TOMORROW
关于作者:
TOMORROW星辰第一作者。如有疑问或者发现错误,请留言作者。
等待的人生发表我的评论  请填写正确的 个人信息
取消评论
表情 加粗 斜体 签到
(1)个小伙伴在吐槽
  1. 好文章!666,学习了
    ybjcd2019-05-05 20:36 回复 Windows 7 | 未知浏览器