Hallo zusammen,
hat jemand eine Idee wie ich die Skriptabfrage der Netzwerkadapter performanter (schneller) gestalten kann..
Die Verwendung von "@IPAdress1 usw." kommt nicht in Frage da sich im System mehr als 4 Netzwerkkarten befinden
(VMWare etc.)
Spoiler anzeigen
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
Opt('MustDeclareVars', 1)
[/autoit] [autoit][/autoit] [autoit]Local $msg, $Input1, $Input2, $Beenden
[/autoit] [autoit][/autoit] [autoit]#Region ### START Koda GUI section ### Form=
GUICreate("Form1", 263, 187, 390, 114)
$Input1 = GUICtrlCreateInput(GetIP("LAN-Verbindung"), 112, 28, 105, 21)
$Input2 = GUICtrlCreateInput(GetIP("Drahtlose Netzwerkverbindung"), 112, 69, 105, 21)
GUICtrlCreateLabel("LAN IP Adresse", 16, 32, 79, 17)
GUICtrlCreateLabel("WLAN IP Adresse", 16, 72, 90, 17)
$Beenden = GUICtrlCreateButton("Beenden", 40, 120, 177, 25, 0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE or $msg = $Beenden
ExitLoop
EndSelect
WEnd
Func GetIP($AdapterName)
Local $objWMIService = ObjGet('winmgmts:\\localhost\root\CIMV2'), $Output = 0
Local $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_NetworkAdapter', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
Local $colItems2 = $objWMIService.ExecQuery('SELECT * FROM Win32_NetworkAdapterConfiguration', 'WQL', 0x30)
If IsObj($colItems2) Then
For $objItem2 In $colItems2
If $objItem.Caption = $objItem2.Caption Then
If $objItem.NetConnectionID = $AdapterName Then
$Output = $objItem2.IPAddress(0)
EndIf
EndIf
Next
EndIf
Next
EndIf
Return $Output
EndFunc