9

我正在使用以下方法通过网络打开目录:

System.Diagnostics.Process.Start(path); // path = UNC network path

但有 2 个网络路径:

\\This_PC_Does_Not_Exist\dir

\\This_PC_Is_Turned_Off\dir

为什么第一个需要非常快来验证网络 PC 不存在,而第二个需要大约两分钟?如果我没记错的话,在 Windows 环境中需要 30 秒才能确定网络路径是否无法访问。

为什么在这种情况下需要这么长时间以及如何加快PC关闭的信息?

4

2 回答 2

7

为了加载文件,Windows 必须首先与计算机建立文件共享连接。首先,它查找 UNC 名称以获取 IP 地址。如果机器不存在,它就无法获得 IP 地址,并且很快就会失败(如第一个示例所示)。如果确实存在(如第二个示例中所示),则 Windows 必须尝试连接。

那么为什么超时应该是 30 秒却需要两分钟呢?一种可能性是它重试了几次。另一种可能性是你有不同的网络协议,它必须尝试每一个。

于 2011-09-29T15:20:55.423 回答
1

检查计算机是否打开的更快方法是 ping 计算机。指定您喜欢的任何超时。应该会在几秒内回复...

我想响应缓慢与关闭计算机的名称在网络中仍然已知并与 ip 相关联有关。然后选择更长的超时时间,因为计算机应该在那里......

于 2011-09-29T15:20:20.870 回答