我正在通过网络打开目录:
System.Diagnostics.Process.Start(path); // path = UNC network path
但有两条网络路径:
\\This_PC_Does_Not_Exist\dir
\\This_PC_Is_Turned_Off\dir
为什么第一个需要非常快速地验证网络PC不存在,而第二个需要大约两分钟?如果我没错,那么在Windows环境中确定网络路径是否无法访问是30秒。
为什么在这种情况下花费这么长时间以及如何加快PC关闭的信息?
答案 0 :(得分:6)
为了加载文件,Windows必须首先与该计算机建立文件共享连接。首先,它查找UNC名称以获取IP地址。如果机器不存在,则无法获取IP地址,并且会很快失败(如第一个示例中所示)。如果确实存在(如第二个示例中所示),则Windows必须尝试连接。
那么为什么超时应该是30秒需要两分钟?一种可能性是重试几次。另一种可能性是你有不同的网络协议,它必须尝试每一个。
答案 1 :(得分:1)
检查计算机是否打开的更快方法是ping计算机。指定您喜欢的任何超时。应该会在几秒钟内得到答复......
我想慢响应必须做一些事情,关闭的计算机的名称仍然在网络中已知并与ip相关联。然后选择更长的超时,因为计算机应该在那里......