Hallo Zusammen,
mit ObjGet etc. habe ich so gut wie keine Erfahrung und die Suchfunktion hilft mir auch nicht weiter. Dennoch habe ich es erfolgreich geschafft, durch Spicken in einem anderen Script, alle meine Netzwerkkarten in einem Rutsch mit folgendem Script auf DHCP umzustellen.
Spoiler anzeigen
; Alle Karten auf DHCP umstellen
Func SetDHCPonAllCards()
$objWMI = ObjGet("winmgmts:\\.\root\cimv2")
; Local $collection = $objWMI.ExecQuery("Select * from Win32_NetworkAdapterConfiguration") ; Nimmt dann alle Adapter -> nicht gut!
$collection = $objWMI.ExecQuery("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
For $objNetCard In $collection
[/autoit] [autoit][/autoit] [autoit]; --- enable DHCP ---
$ret1 = $objNetCard.EnableDHCP()
; Error-Handling
If $ret1 > 1 Then
MsgBox(16, 'DHCP Set Error on ' & $objNetCard.macaddress, 'There was an unknown error setting DHCP')
ElseIf $ret1 = 1 Then
MsgBox(48, 'DHCP Set on ' & $objNetCard.macaddress, 'DHCP was set on the adapter. Please reboot for all changes to take affect')
Else
;no error
MsgBox(0, 'DHCP Set on ' & $objNetCard.macaddress, 'was succesful')
EndIf
Next
EndFunc ;==>SetDHCPonAllCards
Jetzt möchte ich noch ne Funktion schreiben, die alle DHCP-Leases erneuert. Dazu gibt es die Methode "RenewDHCPLeaseAll".
Nur wie muß die ExecQuery aussehen, damit ich die Methode RenewDHCPLeaseAll erfolgreich absetzen kann?
Ich hab es in der Schleife probiert, oder auch einzeln, aber ich bekomme immer einen Fehler.
Wahrscheinlich muß die ganze Query anders ausschauen. Nur wie? ![]()
Hier der Links zu RenewDHCPLeaseAll Method of the Win32_NetworkAdapterConfiguration Class
Besten Dank
R@iner