Hi,
Ich habe nochmal rumprobiert.
Mit der While Schleife in der Whileschliefe funktioniert es zwar, aber die CPU Last ist für so einen Miniprozess sehr hoch.
Es funktioniert übrigens nicht wenn der Sleep Befehl in der Funktion steht, so als wenn er dann da nicht mehr raus kommt ?!?
Was dann auch noch ein unschöner Effekt ist: die Zahlen flackern die ganze Zeit als wenn die Funktion andauernd aufgerufen wird ohne den Sleepbefehl durchzuführen.
Wenn noch jemand eine zündende Idee hat wäre ich dankbar
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <process.au3>
#include <array.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Spoolcheck", 289, 85, 196, 152)
$Label1 = GUICtrlCreateLabel("Dateien im Spoolverzeichnis", 3, 8, 137, 17)
$Data1 = GUICtrlCreateLabel("Data1", 157, 8, 33, 17)
$Button1 = GUICtrlCreateButton("öffnen", 206, 4, 75, 20)
$Label2 = GUICtrlCreateLabel("Dateien in Windows\Temp", 3, 30, 131, 17)
$Data2 = GUICtrlCreateLabel("Data2", 157, 29, 33, 17)
$Button2 = GUICtrlCreateButton("öffnen", 206, 26, 75, 20)
$Label3 = GUICtrlCreateLabel("Dateien in RETRY", 3, 52, 131, 17)
$Data3 = GUICtrlCreateLabel("Data3", 157, 50, 33, 17)
$Button3 = GUICtrlCreateButton("öffnen", 206, 48, 75, 20)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
[/autoit][autoit][/autoit][autoit]while 1
Zaehlen()
ExitLoop
Sleep (2000)
WEnd
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
ShellExecute("EXPLORER", "C:\Windows\System32\spool\PRINTERS")
Case $Button2
ShellExecute("EXPLORER", "C:\Windows\temp")
Case $Button3
ShellExecute("EXPLORER", "D:\Proforma\Proforma\retry")
EndSwitch
[/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]WEnd
[/autoit][autoit][/autoit][autoit]Func Zaehlen()
[/autoit][autoit][/autoit][autoit]$size1 = DirGetSize("C:\Windows\System32\spool\PRINTERS\",1)
$size2 = DirGetSize("C:\Windows\TEMP\",1)
$size3 = DirGetSize("D:\Proforma\Proforma\retry",1)
If IsArray($size1) Then
GUICtrlSetData($Data1,$size1[1])
EndIf
If IsArray($size2) Then
GUICtrlSetData($Data2,$size2[1])
EndIf
If IsArray($size3) Then
GUICtrlSetData($Data3,$size3[1])
EndIf
GUISetState()
EndFunc
[/autoit]