求一个能自动检测网卡网关IP然后对其ping测试,及时显示ping结果状态的代码。
本帖最后由 songqi_z 于 2009-9-16 19:10 编辑求一个能自动检测网卡网关IP然后对其ping测试,及时显示ping结果状态的代码。如下是找到网卡网关IP但不知如何对其ping测试,希望高人相助!!!!
$objWMIService = ObjGet("winmgmts:\\.\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = TRUE", "WQL", 0x10 + 0x20)
For $objItem In $colItems
$IPGateway = $objItem.DefaultIPGateway(0)
Next
$Number3 = StringRegExpReplace($IPGateway, '(\d+\.){12}', '') 没人能帮解答一下? 自动 的含义是? 本帖最后由 fjvip 于 2009-9-13 20:23 编辑
;未严格测试,只提供思路而已
#include <inet.au3>
dim $ip,$file,$var
For $i = 100 to 254
$var = Ping ("192.168.0."&$i,500)
If $var Then
Else
ToolTip ("Pinging:192.168.0."&$i,1,1)
$ip ="192.168.0."&$i&"|"
$file = FileOpen("log.txt", 1)
FileWriteLine($file,$ip & @YEAR & "年" & @MON & "月" & @MDAY &"日" &@HOUR &"时"& @MIN &"分")
FileClose($file)
EndIf
Next 求一个能自动检测网卡网关IP然后对其ping测试,及时显示ping结果状态的代码。如下是找到网卡网关IP但不知如何对其ping测试,希望高人相助!!!!
$objWMIService = ObjGet("winmgmts:\\.\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = TRUE", "WQL", 0x10 + 0x20)
For $objItem In $colItems
$IPGateway = $objItem.DefaultIPGateway(0)
Next
$Number3 = StringRegExpReplace($IPGateway, '(\d+\.){12}', '') 求一个能自动检测网卡网关IP然后对其ping测试,及时显示ping结果状态的代码。如下是找到网卡网关IP但不知如何对其ping测试,希望高人相助!!!!
$objWMIService = ObjGet("winmgmts:\\.\root\CIMV2")
$colItem ...
songqi_z 发表于 2009-9-13 21:16 http://www.autoitx.com/images/common/back.gif
加上ping不就行了$objWMIService = ObjGet("winmgmts:\\.\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = TRUE", "WQL", 0x10 + 0x20)
For $objItem In $colItems
$IPGateway = $objItem.DefaultIPGateway(0)
Next
$IPGateway = StringRegExpReplace($IPGateway, '(\d+\.){12}', '')
Dim $sResult
$iPid = Run("ping " & $IPGateway, "", 0, 3)
While 1
$sLine = StdoutRead($iPid)
If @error Then ExitLoop
$sResult &= $sLine
WEnd
MsgBox(0, "ping " & $IPGateway, $sResult) 本帖最后由 songqi_z 于 2009-9-14 10:11 编辑
感谢afan热心、快的解答,谢谢了,
但如何增加ping 的行数,及时显示DOS窗口ping结果状态呢 ping 的行数? 是什么意思? 再 ping 点别的? 他的意思应该是一直回显ping的状态 对,就是这样,如果照afan的解答,ping100个包等待的时间太长。 建个Gui,弄个Edit控件,它就可以持续回显了~
Ping的内容过多可以另建txt文本一行行读取执行,或建个bat文件一次执行即可。 使用ping函数,返回值就可以了 好东西,谢谢分享。 good example...3QQQQQQQQ gui 很难...
页:
[1]