Vbscript 通过输入序列号查找计算机名

Vbscript 通过输入序列号查找计算机名,vbscript,wmi,serial-number,Vbscript,Wmi,Serial Number,我有这个脚本,它可以通过输入计算机名来搜索计算机序列号。你能帮我把它倒过来吗?那么它将通过输入序列号来查找计算机名 MyHostName = InputBox("Enter Machine Name") Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _ MyHostName & "\root\cimv2") Set colSMBI

我有这个脚本,它可以通过输入计算机名来搜索计算机序列号。你能帮我把它倒过来吗?那么它将通过输入序列号来查找计算机名

MyHostName = InputBox("Enter Machine Name")
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _
                    MyHostName & "\root\cimv2")
Set colSMBIOS = objWMIService.ExecQuery("SELECT * FROM Win32_SystemEnclosure")
For Each objSMBIOS In colSMBIOS    
    pn = "Part Number: " & objSMBIOS.PartNumber
    sn = "Serial Number: " & objSMBIOS.SerialNumber
    sn1 = objSMBIOS.SerialNumber
    an = "Asset Tag: " & objSMBIOS.SMBIOSAssetTag
Next
tmp = InputBox(pn & VBCrLf & sn  & VBCrLf & an, "Computer Serial Number", sn1)

您连接到给定计算机并从中获取序列号的代码。由于您无法连接到序列号,因此需要将序列号映射到计算机名称的数据库才能进行此类查找。使用powershell,可能会。。。如果计算机在网络中@MithileshIndurkar Yes,当然您可以随时采取简单的方法连接到每台计算机并检查其序列号。这在VBScript中也可以使用,但取决于网络的大小和计算机的联机状态,这需要很长时间。而且你需要有一个所有计算机的列表作为开始。@AnsgarWiechers如果你想强行使用它,为什么还要麻烦列出一个列表呢?只需尝试连接到网络中的每个IP。(注意:不建议这样做!);)@蒂姆,安斯加没有这样建议。再次阅读评论历史记录。