请教,怎么用$objWMIService.ExecQuery来自动获取IP及DNS
请教,怎么用$objWMIService.ExecQuery来自动获取IP及DNS,手动获取IP(即设置IP)的我会 共享手动获取的源码;~ $ConnectionName = 连接名
;~ $SetIPAddress =IP地址
;~ $SetSubnetmask = 子网掩码
;~ $SetGateway = 网关
;~ Dim $SetDns
;~ $SetDns = DNS1
;~ $SetDns = DNS2
$objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2")
$colItemName= $objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapter Where NetConnectionID='" & $ConnectionName & "'", "WQL", 0x30)
For $objName In $colItemName
If $objName.NetConnectionID =$ConnectionName Then
$CardIndex=$objName.Index
ExitLoop
EndIf
Next
If $CardIndex =-1 Then
MsgBox(0,"错误",'找不到连接' )
Else
$colItems = $objWMIService.ExecQuery ("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = TRUE And Index='" & $CardIndex & "'" , "WQL", _
$wbemFlagReturnImmediately + $wbemFlagForwardOnly)
If IsObj($colItems) Then
For $objNetAdapter In $colItems
$objNetAdapter.EnableStatic ($SetIPAddress, $SetSubnetmask)
$objNetAdapter.SetGateways ($SetGateway)
$objNetAdapter.SetDNSServerSearchOrder ($SetDns)
Next
EndIf
Endif ji记得Global $wbemFlagReturnImmediately = 0x10, _ ;不要修改
$wbemFlagForwardOnly = 0x20 ;不要修改 $objNetAdapter.EnableDHCP()
$objNetAdapter.SetDNSServerSearchOrder()
这样后
表面上是自动获取,实际也是,但读取子网掩码会等于255.0.0.0,郁闷,不是0.0.0.0,有没有解决法子? 饿,自顶。可能有点难解决。。。
IP信息是由_GetNetworkNetInfo函数获取 奶奶的,我马上就搞好au3多网卡不支持vpn版的修改mac 哈,mac源码基本完成了。。。
只等上面的问题解决 没人知道?画gui中。。。 我也在搞MAC这块,呵呵!我用了ACN帮助里面的函数,自动获取的话,你可以试一下以下命令:netsh interface ip reset ip当然不会立即生效,需要重启电脑。 补充一下,也可以尝试用ipconfig /renew一下看看效果。 回楼上的,你所说的不行,不是不行,而是不适合我,我已经搞好了,mac也行了,就等我爸不在,去他的笔记本调试多网卡修改mac是否成功,ip的早已好了,2.0版本出炉了。。。 我制作的mac修改器:http://www.autoitx.com/forum.php?mod=viewthread&tid=10178&page=1&fromuid=7644076#pid94717 版主你也有会人新问题,这个问题查查新版的UDF就可以! 写注册表. . 回复 1# kn007
楼主请问如何使用wmi设置成自动获取IP
页:
[1]