'Create a file to write the result
'============================================================
FileName = "PingResult.txt"
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(FileName)) Then
Set resultFile = fso.OpenTextFile(FileName, 8)
else
Set resultFile = fso.CreateTextFile(FileName, true)
end if
subnetID = "192.168.35."
For range = 2 to 254 ' specify range of ip
ipAddress = subnetID & range
if Ping(ipAddress) then
resultFile.writeline ipAddress & " is alive"
else
resultFile.writeline ipAddress & " is dead"
end if
next
'Using Win32_PingStatus class
'============================================================
Function Ping(ipAddress)
Set objWMIService = _
GetObject("winmgmts:\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery _
("Select * from Win32_PingStatus " & _
"Where Address = '" & ipAddress & "'")
For Each objItem in colItems
If objItem.StatusCode = 0 Then
Ping = True
else
Ping = False
End If
Next
End Function
Wednesday, September 16, 2009
Revised script for IP range ping
Last year i actually wrote a script to do the same thing but the script is not really good and always have the annoyed dos windows pop-up. This time, i using the example on the "Hey, Scripting Guy!" and it is a much much better script in terms of neatness and speed) for doing the same thing
Subscribe to:
Posts (Atom)