My.Computer.Network.Ping(<;<;servername>;)始终返回true
我正在尝试监视网络中的其他PC是否已启动或关闭。根据我的研究,我发现My.Computer.Network.Ping(<;<;servername>;)始终返回true,.net,vb.net,ping,.net,Vb.net,Ping,我正在尝试监视网络中的其他PC是否已启动或关闭。根据我的研究,我发现我的.Computer.Network.Ping是实现这一点的方法 所以我创建了一个测试项目,在那里我ping了5个工作站 WS0001 (non - existant) WS0002 (non - existant) WS3102 (existant) WS3207 (existant) WS3306 (existant) 但是,无论工作站是否存在,方法My.Computer.Network.Ping始终返回true 问
我的.Computer.Network.Ping
是实现这一点的方法
所以我创建了一个测试项目,在那里我ping了5个工作站
WS0001 (non - existant)
WS0002 (non - existant)
WS3102 (existant)
WS3207 (existant)
WS3306 (existant)
但是,无论工作站是否存在,方法My.Computer.Network.Ping
始终返回true
问题:
有人知道为什么它会错误地返回true
我使用的方法如下m_参数(“工作站”)
是上述工作站之一
If My.Computer.Network.Ping(m_Parameters("workstation")) Then
'The PC is available in the company network
Else
' The Pc is unavailable in the company network
End If
注意:使用My.Computer.Network.IsAvailable
无法解决此问题。我想要其他工作站的信息,而不是我自己的
注2:我的命令提示符屏幕截图
翻译:“Ping请求找不到主机ws0001。请检查主机名并重试。”WS3320是我同事的计算机。WS0001是我们的“测试工作站”,它现在不运行(因为超过5个月),并且在我们的领域中不再为人所知
谢谢你的帮助 尝试使用此方法
msdn.microsoft.com/en us/library/system.net.networkinformation.ping%28v=vs.110%29.aspxMS建议:ping方法不是确定远程计算机可用性的故障安全方法:目标计算机上的ping端口可能已关闭,或者ping请求可能已被防火墙或路由器阻止。您可能还需要检查如果您的DNS解析正确。在某些情况下,使用防火墙时,电脑会做出“响应”,因为防火墙会为电脑做出响应。这是一种替代方法,适用于@user3036342。如果端口关闭,则我可能会收到异常或其他情况。然而我总是得到“真实”。DNS名称解析正确,这不是问题所在。@svranken,你确定不是DNS吗?一些互联网服务提供商将接受所有无效的DNS查找,并“有益地”将它们指向自己的搜索页面,此时您将ping他们的“有益的”服务器(而不是实际发现您正在查找的机器不存在)。在命令提示下运行
ping WS0001
时,您会得到什么输出?