2013-11-25 26 views
2

因此,我必须设置静态IP的默认网关和WINS和DNS,以及很快Windows 7和XP都不适用于很多Windows系统。我做了一个批处理脚本来帮助我使用netsh。问题不是每个网络接口名称都是相同的。大多数情况下它是“本地连接”,但有些是“以太网”或“无线连接”以及其他。因此,这里是从我的脚本行:。将批量使用的网卡设置成一个变量

netsh接口IP地址 “本地连接” 静态192.168%%量程IP_Last%255.255.255.0 192.168%范围%。1个

变量,如%。范围%在用户输入时设置较早。无论如何,我要问的是我怎样才能使它在我可以使用的地方:

netsh interface ip set address“%NIC_NAME%”static 192.168。%Range%。%IP_Last%255.255.255.0 192.168。%Range %.1

这样它就可以在任何系统上工作。我只希望它使用当前活动的网卡名称。非常感谢您的帮助!

回答

0

您可以使用WMI找到活动的适配器,调整下面的代码,您的需要和选择名称,而不是IP地址:

strComputer = "." 
Set objWMIService = GetObject(_ 
"winmgmts:\\" & strComputer & "\root\cimv2") 
Set IPConfigSet = objWMIService.ExecQuery _ 
("Select IPAddress from Win32_NetworkAdapterConfiguration" _ 
    & " where IPEnabled=TRUE") 

For Each IPConfig in IPConfigSet 
If Not IsNull(IPConfig.IPAddress) Then 
    For i=LBound(IPConfig.IPAddress) _ 
    to UBound(IPConfig.IPAddress) 
    If Instr(1, IPConfig.IPAddress(i), "169.") = 0 Then 


     WScript.Echo IPConfig.IPAddress(i) 
     ELSE 
     END IF 
    Next 
End If 
Next 
相关问题