vbs脚本 ip切换器

canca16年前 (2008-12-03)VBScript254

dim GateWay()
dim info(5)
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'可选网关1
info(0)="电信"
info(1)="192.168.1.10"   '本机IP
info(2)="255.255.255.0" '子网掩码
info(3)="192.168.1.1" '网关
info(4)="201.96.112.133"   '首选DNS
info(5)="84.124.96.122"   '备用DNS
Redim PreServe GateWay(0)
GateWay(Ubound(GateWay))=info
'可选网关2
info(0)="网通"
info(1)="192.168.1.2"   '本机IP
info(2)="255.255.255.0" '子网掩码
info(3)="192.168.1.1" '网关
info(4)="201.96.112.133"   '首选DNS
info(5)="84.124.96.122"   '备用DNS
Redim PreServe GateWay(Ubound(GateWay)+1)
GateWay(Ubound(GateWay))=info
'如有更多网关,请复制可选网关2,然后修改其中的网关信息

For i=0 to ubound(GateWay)
if msgbox("选择“" & GateWay(i)(0) & "”请按是,否则请按否",vbquestion+vbyesno)=vbyes then
msgbox ChangeIP(GateWay(i)(1), GateWay(i)(2), GateWay(i)(3), GateWay(i)(4), GateWay(i)(5))
exit for
end if
Next
Function ChangeIP(IP, NM, GW, MDNS, SDNS)
   Dim strComputer, objWMIService, colNetAdapters, strIPAddress, strSubnetMask
   Dim strGateway, strGatewaymetric, strDNS, objNetAdapter, errEnable, errGateways, errDNS
   strComputer = "."
   Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
   Set colNetAdapters = objWMIService.ExecQuery("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
   strIPAddress=Array(IP)
   strSubnetMask=Array(NM)
   strGateway=Array(GW)
   strDNS = Array(MDNS, SDNS)
   strGatewaymetric = Array(1)
   For Each objNetAdapter In colNetAdapters
     errEnable = objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)
     errGateways = objNetAdapter.SetGateways(strGateway, strGatewaymetric)
     errDNS = objNetAdapter.SetDNSServerSearchOrder(strDNS)
     If errEnable = 0 And errGateways = 0 And errDNS = 0 Then
       ChangeIP = "设置成功"
     Else
       If errEnable = 0 Then
           ChangeIP = "IP地址和子网掩码设置成功, "
       Else
           ChangeIP = "IP地址或子网掩码设置失败, "
       End If
       If errGateways = 0 Then
           ChangeIP = ChangeIP & "默认网关设置成功, "
       Else
           ChangeIP = ChangeIP & "默认网关设置失败, "
       End If
       If errDNS = 0 Then
           ChangeIP = ChangeIP & "DNS设置成功"
       Else
           ChangeIP = ChangeIP & "DNS设置失败"
       End If
     End If
   Next
   End Function

相关文章

VBS关闭或启动网络连接

Const ssfCONTROLS = 3 sConnectionName = "本地连接" sEnableVerb = "启用(&A)" sDisableVerb = "停用(&B)...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。