VBS 访问WMI读取IP地址,并将其设置为静态IP

最近机子IP很不稳定,方便期间,全部设置为静态的。机子很多,就写个vbs脚本:

strComputer = "."
Set objWMIService = GetObject( _
    "winmgmts:\\" & strComputer & "\root\cimv2")
Set colNics = objWMIService.ExecQuery _
    ("Select * From Win32_NetworkAdapter " _
        & "Where NetConnectionID = " & _
        "'Local Area Connection'")
 
For Each objNic in colNics
    Set colNicConfigs = objWMIService.ExecQuery _
      ("ASSOCIATORS OF " _
          & "{Win32_NetworkAdapter.DeviceID='" & _
      objNic.DeviceID & "'}" & _
      " WHERE AssocClass=Win32_NetworkAdapterSetting")
    For Each objNicConfig In colNicConfigs
        For Each strIPAddress in objNicConfig.IPAddress
            strIPAddress1 = strIPAddress
        Exit For        
        Next
     For Each strGateway in objNicConfig.DefaultIPGateway 
             strGateway1 = strGateway
        Exit For
        Next
    For Each strSubnet in objNicConfig.IPSubnet  
             strSubnet1 = strSubnet 
        Exit For
        Next
    Next
Next


strComputer1 = "."
Set objWMIService1 = GetObject( _
    "winmgmts:\\" & strComputer1 & "\root\cimv2")
Set colNetAdapters = objWMIService1.ExecQuery _
    ("Select * from Win32_NetworkAdapterConfiguration " _
        & "where IPEnabled=TRUE")

strGatewaymetric = Array(1)
aSubnet = Array(strSubnet1)
aIPAddress = Array(strIPAddress1)
aGateway = Array(strGateway1)


For Each objNetAdapter in colNetAdapters
    errEnable = objNetAdapter.EnableStatic( _
        aIPAddress , aSubnet)
    errGateways = objNetAdapter.SetGateways(_
        aGateway, strGatewaymetric)
Next
原文地址:https://www.cnblogs.com/jimson/p/1864521.html