Hallo Community
Hab da n kleines Problem und steh auf der Leitung.
Mein Programm soll verschiedene Dateien einfach testen, ob sich irgendwelche Fehler eingeschlichen haben.
Dies mach ich mit PACL, was alles auch soweit einwandfrei funktioniert.
Nun soll aber in der GUI, die mir anzeigt welche Datei getestet wird, der Text so angeordnet sein, dass die Datei, die gerade getestet wird an oberster Stelle steht z.b.
ich hab x Dateien und die 3. wird getestet, also soll in der Liste ungefähr so dargestellt werden:
Testen der 3. von x
Testen der 2. von x
Testen der 1. von x
Hier noch der Codeabschnitt der für das ganze verantwortlich ist
Spoiler anzeigen
#include <GUIConstants.au3>
#include <WindowsConstants.au3>
#include "_XMLDomWrapper.au3"
#Include "Array.au3"
#Include "File.au3" ; Zum Schreiben der Session-Zeile
#include "Date.au3"
#include "Constants.au3"
#include <GUIConstantsEx.au3>
GUICreate("Übersicht der zu testenden Dateien",600)
GUISetState(@SW_SHOW)
$mylist1 = GUICtrlCreateList("", 200, 0, 200, 200)
$mylist2 = GUICtrlCreateList("", 0, 201, 600, 200)
While 1
For $i = 01 To _FileCountLines(@ScriptDir&"\FileList.txt")
$msg = GUIGetMsg()
$ZuTestendeDatei = FileReadLine(@ScriptDir&"\FileList.txt",$i)
If $i < 10 Then
GUICtrlSetData($mylist1, "Testen der 0"&$i&". Datei von " &_FileCountLines(@ScriptDir&"\FileList.txt")&" Dateien")
Else
GUICtrlSetData($mylist1, "Testen der "&$i&". Datei von " &_FileCountLines(@ScriptDir&"\FileList.txt")&" Dateien")
EndIf
GUICtrlSetData($mylist2, "Zu testende Datei: "& $ZuTestendeDatei)
;MsgBox(64,"","Testen der "&$i&". Datei von " &_FileCountLines(@ScriptDir&"\TestFileList.txt")&" Dateien" &@CRLF&"Zu testende Datei: "& $ZuTestendeDatei,3)
Local $foo = Run(@ComSpec & ' /c'&@ScriptDir&'\PACL\paext -t "' &$ZuTestendeDatei& '"', @SystemDir, @SW_HIDE, $STDOUT_CHILD)
Sleep(500)
ProcessSetPriority("PAEXT.EXE",1)
While 1
Global $line = StdoutRead($foo)
If @error Then ExitLoop
;MsgBox(0, "STDOUT read:", $line)
If StringInStr($line,"OK [100%]") Then
;MsgBox(64,"Zu testende Datei","Kein Fehler bei " & $ZuTestendeDatei,2)
EndIf
If StringInStr($line,'ERROR!') Then
MsgBox(0,"","Fehler beim überprüfen von " & $ZuTestendeDatei)
EndIf
Wend
If $i == _FileCountLines(@ScriptDir&"\FileList.txt") Then
ExitLoop(2)
EndIf
Next
WEnd
Grad noch bisl chaotisch aber er tut was er soll.....bis auf die Anordnung^^