vbs怎么扫描局域网内所有的在线ip并将其储存?

游客 发布于 2023-12-07 阅读(24)
使用Visual Basic Script(VBS)来扫描局域网内所有在线IP并将其存储,可以编写一个简单的脚本来实现。以下是一个基本的示例脚本,它将扫描网络中的IP地址,并将结果写入到一个文本文件中:

vbscript

Option Explicit

Dim strComputer, objWMIService, colItems, objItem, fso, fileOut, ipList

Dim strIP, strMAC, strHostName, i, strResult

strComputer = "."

Set objWMIService = GetObject("winmgmts:" _

& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set colItems = objWMIService.ExecQuery _

("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=True")

Set fso = CreateObject("Scripting.FileSystemObject")

Set fileOut = fso.CreateTextFile("Online_IPs.txt", True)

i = 1

ipList = ""

For Each objItem In colItems

For Each strIP in objItem.IPAddress

If Not IsNull(strIP) Then

Wscript.Echo "IP Address: " & strIP

strResult = strIP & vbCrLf

fileOut.WriteLine(strResult)

End If

Next

Next

fileOut.Close

WScript.Quit

这个脚本会显示当前计算机的IP地址,并将它们写入到名为Online_IPs.txt的文本文件中。

注意:这只是一个基本的示例,实际使用时可能需要根据你的具体需求进行修改和扩展。例如,如果你想扫描整个子网的IP地址,你可能需要修改代码以循环遍历子网内的所有IP地址,或者使用其他方法来获取网络设备的信息。此外,如果你希望获取更详细的信息,如MAC地址和主机名,也可以相应地调整代码。