脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - VBS - vbs ping实现的两种方式

vbs ping实现的两种方式

2020-08-21 10:54longlongway2012 VBS

这篇文章主要介绍了vbs ping实现的两种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

对于vbs中ping的实现可以通过两种方式 :

  • 1、调用系统ping命令;
  • 2、使用wmi查询pingstate类处理。

1、调用系统ping命令

?
1
2
Set wshell = CreateObject("WScript.Shell")
wshell.run("ping 182.183.101.1",0.true)

对于以上调用,如果想对其进行过滤,可以考虑将运行结果重定向到文件,在读到一个string中,查找其中是否有timeout或超时字符,判断是否超时。本打算直接拼接命令重定向到文件,但怎么都不成功,所以run调用一个bat,bat中写:ping 192.168.101.1 -n 1 -w 1200 

2、使用wmi查询pingstate类处理:

?
1
2
3
4
5
6
7
8
9
10
11
12
'url = "www.baidu.com"
url = "119.75.217.109"
strComputer = "."
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colPings = objWMIService.ExecQuery ("Select * From Win32_PingStatus where Address = '" & url & "'")
For Each objPing in colPings
MsgBox url & " responded to ping." & vbcrlf &_
"Responding Address: " & objPing.ProtocolAddress & vbcrlf &_
"Responding Name: " & objPing.ProtocolAddressResolved & vbcrlf &_
"Bytes Sent: " & objPing.BufferSize & vbcrlf &_
"Time: " & objPing.ResponseTime & " ms"
Next

到此这篇关于vbs ping的实现示例的文章就介绍到这了,更多相关vbs ping内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/kasteluo/article/details/43155371

延伸 · 阅读

精彩推荐