公司的网管软件,在winxp,win7等下都能正常发送/接收 网络数据,但win10下面,某些命令就是发出去没响应,“无法从传输连接中读取数据: 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败”。
仔细想了下,可能是
NetworkStream.ReadTimeout
的问题,因为超时会读不回来正确的数据。
之前的读写时间都是3秒,int wDelay = 3000, rDelay = 3000;即,
NetworkStream netStream = null;
netStream.ReadTimeout= rDelay = 3000;
netStream.WriteTimeout = wDelay= 3000;
试验了一下,3秒改成4秒就ok的了。
这个和系统相关的属性,只有调试的时候才能找到,而不是起初想象的.net版本,程序以管理员身份运行;此外,别的命令用3秒也正常读写的,只是其中的一条SendTable_psi_finish(outChnId),发送psi完毕的命令始终不能得到正确值。