Hallo zusammen,
ich stehe vor einem Problem zu dem ich leider nichts brauchbares finden konnte und hoffe sehr auf eure Hilfe
Das Skript soll die W-LAN Profile des PC´s auslesen, in einer Liste aufführen und letztendlich das gewählte Profil umstellen.
Das Auslesen habe ich per cmd gelöst da ich keine Möglichkeit gefunden habe das direkt in Autoit zu schaffen.
Bei mir ist das Ergebnis der cmd in etwas so:
Spoiler anzeigen
Profile auf Schnittstelle WLAN:
Gruppenrichtlinienprofile (schreibgeschtzt)
---------------------------------
Firmenwlan
Benutzerprofile
---------------
Profil fr alle Benutzer : W-Lan1
Profil fr alle Benutzer : W Lan 2
Profil fr alle Benutzer : Wlan 1@
Und jetzt zu meinem Problem:
Es sollen nur die Profil-Namen hinter "Profil für alle Benutzer" verwendet werden. Die Anzahl der Profile variiert und die Profile beginnen auch nicht immer in der selben Zeile...
Ich hab in Richtung ini, Array und anderes gesucht... leider ohne Erfolg
Anbei noch das Skript das ich aktuell habe um es besser zu verstehen:
Die Variablen $Net1 - $Net3 sollen durch die W-LAN Profile ersetzt werden (Je Profil ein Eintrag in der Auswahlliste)
Spoiler anzeigen
#Region INCLUDE
#include <GuiConstantsEx.au3>
#include <MsgBoxConstants.au3>
#include <Constants.au3>
#EndRegion INCLUDE
;~ Variablen zum testen der GUI
#Region Test Variablen
$Net1="Netzwerk 1"
$Net2="Netzwerk 2"
$Net3="Netzwerk 3"
#EndRegion Test Variablen
#Region Read Wlan
Local $iPID = Run(@ComSpec & ' /C "netsh wlan show profiles"' , "", @SW_HIDE, $STDOUT_CHILD)
ProcessWaitClose($iPID)
Local $sOutput = StdoutRead($iPID)
MsgBox("","test",$sOutput) ;zum Funktionstest
#EndRegion Read Wlan
#Region GUI
GUICreate("Netzwerk einstellen", 300, 200)
GUISetCoord(10, 10)
#EndRegion GUI
#Region COMBO
Config()
Func Config()
Local $idList = GUICtrlCreateCombo("", -1, -1, -1, 100)
GUICtrlSetData($idList, $Net1)
GUICtrlSetData($idList, $Net2)
GUICtrlSetData($idList, $Net3)
Local $idButton1 = GUICtrlCreateButton("Getaktete Verbindung", -1, -1 +100, 150)
Local $idButton2 = GUICtrlCreateButton("Breitband-Verbindung", -1, -1 +130, 150)
GUISetState(@SW_SHOW)
Local $idMsg, $Wahl, $cmd
; Loop
Do
$idMsg = GUIGetMsg()
If $idMsg = $idButton1 Then
$Wahl = GUICtrlRead($idList)
$cmd = "netsh wlan set profileparameter name=" & '"' & $Wahl & '"' & " cost=Fixed"
;~ RunWait(@ComSpec & " /c " & $CMD)
MsgBox("","",$cmd)
EndIf
If $idMsg = $idButton2 Then
$cmd = "netsh wlan set profileparameter name=" & '"' & $Wahl & '"' & " cost=Unrestricted"
;~ RunWait(@ComSpec & " /c " & $CMD)
MsgBox("","",$cmd)
EndIf
Until $idMsg = $GUI_EVENT_CLOSE
EndFunc ;==>Config
#EndRegion COMBO
PS: Ich bin noch sehr grün hinter den Autoit Ohren.. wenn ich irgendwo völligen Quatsch gemacht habe sagt es mir bitte.. Ich bin lernfähig
Danke schon mal
Blue