Hallo zusammen,
irgendwie komme ich mit dem Ladebalken meine Abfrage nicht ganz klar.
Habe ein Tool geschrieben, welches per Powershell eine Abfrage der Ad macht.
Nachdem ich auf den Button klicker führt er 5 Abfragen durch.
Nice wäre es, wenn der Ladebalken so lange läuft, bis die Abfrage durch ist.
Doch nach meinem Code soll der Ladebalken nach der Beendigung der ersten Abfrage starten.
Den führe ich auch danach aus, aber erst wird der Balken laufen und dann die Jobs. Das irritiert den Benutzer später, weil der Balken schon geladen hat, aber die weiteren Abfragen ab Zeile 80-83 noch laufen. Wie bekomme ich den Balken parallel zu den Abfragen zum laufen.
Vielen lieben Dank im Voraus für die Unterstützung.
C
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <File.au3>
#include <FileConstants.au3>
#include <WinAPIFiles.au3>
#include <GuiEdit.au3>
#include <GuiMenu.au3>
#Region ### START Koda GUI section ###
$Form1 = GUICreate("Auswertung | V.1", 964, 535, 292, 268)
$MenuItem1 = GUICtrlCreateMenu("Start")
$MenuItem2 = GUICtrlCreateMenu("Info")
$MenuItem3 = GUICtrlCreateMenuItem("Info", $MenuItem2)
$MenuItem4 = GUICtrlCreateMenuItem("Hilfe", $MenuItem2)
$MenuItem5 = GUICtrlCreateMenuItem("Beenden",$MenuItem1)
$Label1 = GUICtrlCreateLabel("Gruppenzugehörigkeit (User)", 8, 48, 112, 30)
$Label6 = GUICtrlCreateLabel("Name", 8, 288, 257, 17)
$Label7 = GUICtrlCreateLabel("E-Mail Adresse", 8, 320, 257, 17)
$Label8 = GUICtrlCreateLabel("Telefonnummer", 8, 352, 257, 17)
$Label101 = GUICtrlCreateLabel("Personalnummer", 8, 384, 257, 17)
$Input1 = GUICtrlCreateInput("AD-Username", 152, 48, 257, 21)
$Input6 = GUICtrlCreateInput("", 152, 288, 257, 21)
$Input7 = GUICtrlCreateInput("", 152, 320, 257, 21)
$Input8 = GUICtrlCreateInput("", 152, 352, 257, 21)
$Input101 = GUICtrlCreateInput("", 152, 384, 257, 21)
$Combo1 = GUICtrlCreateCombo("domain.int", 152, 8, 145, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
$idProgressbar1 = GUICtrlCreateProgress(152, 448, 257, 21)
$Button1 = GUICtrlCreateButton("Start", 448, 48, 75, 25)
$Edit1 = GUICtrlCreateEdit("", 608, 16, 321, 489)
GUICtrlSetData(-1, "")
GUICtrlSetData($Combo1,"corp.int")
GUISetState(@SW_SHOW)
GUICtrlSetState($Input6, 128)
GUICtrlSetState($Input7, 128)
GUICtrlSetState($Input8, 128)
GUICtrlSetState($Input101, 128)
GUICtrlSetState($Input111, 128)
#EndRegion ### END Koda GUI section ###
Func _PowerShell_Command($sCommand)
Local $iPID = Run(StringFormat('"%s" "%s"', 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe', $sCommand), @ScriptDir, @SW_HIDE, 0x2)
Local $sOut
Do
$sOut &= StdoutRead($iPID)
Until @error
StdioClose($iPID)
Return $sOut
EndFunc
Func Ladebalken()
Local $iWait = 70
Local $iSavPos = 0
Local $idMsg, $idM
For $i = $iSavPos To 100
$iSavPos = 0
GUICtrlSetData($idProgressbar1, $i)
Sleep($iWait)
Next
EndFunc
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $MenuItem5
Exit
Case $Button1
$sComboRead = ""
$sComboRead = GUICtrlRead($Combo1)
$text1 = GUICtrlRead($Input1)
$abfrage1 = (_PowerShell_Command('Get-ADPrincipalGroupMembership -Server '& $sComboRead &' -Identity ' & $text1 & ' | select name | sort-object name'))
If $abfrage1 = "" Then
$fehler1 = "User exestiert nicht"
_GUICtrlEdit_SetText($Edit1, $fehler1)
Else
_GUICtrlEdit_SetText($Edit1, $abfrage1)
EndIf
Ladebalken()
$abfrage111= (_PowerShell_Command('(Get-ADUser -identity ' & $text1 & ' -Properties * | Select-Object cn).cn'))
$abfrage112= (_PowerShell_Command('(Get-ADUser -identity ' & $text1 & ' -Properties * | Select-Object mail).mail'))
$abfrage113= (_PowerShell_Command('(Get-ADUser -identity ' & $text1 & ' -Properties * | Select-Object telephoneNumber).telephoneNumber'))
$abfrage114= (_PowerShell_Command('(Get-ADUser -identity ' & $text1 & ' -Properties * | Select-Object EmployeeNumber).EmployeeNumber'))
_GUICtrlEdit_SetText($Input6,$abfrage111)
_GUICtrlEdit_SetText($Input7,$abfrage112)
_GUICtrlEdit_SetText($Input8,$abfrage113)
_GUICtrlEdit_SetText($Input101,$abfrage114)
EndSwitch
WEnd
Alles anzeigen