Problem mit Dateien, DirectoryEntry befehlen, usw.
Verfasst: 20.07.2005 01:02
So erstmal hallo,
ich hoffe der titel passt weil mir ist nix besseres eingefallen. Wenn nicht sollen ihn bitte die Mods ändern.
so dann zu meinem Problem. Der folgende code sollte erst alle dateien in dem Pure Basic Ordner Debugen und danach überprüfen ob sich eine datei geändert hat oder eine neue dazugekommen ist. ersteres funktioniert schon was eigentlich auch kein problem ist aber bei dem anderen hab ich irgendwo was falsch gemacht.
so jetzt entschuldige ich mich noch für unschlüssige namen (wie z.B. Structure bla() und die variablennamen z.B. a$) und für meine mangelhafte kommentierung und hoffe mir kann jemand helfen.
Schon mal danke im Voraus.
ich hoffe der titel passt weil mir ist nix besseres eingefallen. Wenn nicht sollen ihn bitte die Mods ändern.
so dann zu meinem Problem. Der folgende code sollte erst alle dateien in dem Pure Basic Ordner Debugen und danach überprüfen ob sich eine datei geändert hat oder eine neue dazugekommen ist. ersteres funktioniert schon was eigentlich auch kein problem ist aber bei dem anderen hab ich irgendwo was falsch gemacht.
Code: Alles auswählen
ExamineDirectory(1,"C:\PureBASIC","*.*")
Structure bla
name.s
md5summe.s
EndStructure
NewList files.bla()
Repeat
If NextDirectoryEntry()
a$ = DirectoryEntryName()
AddElement(files())
files()\name = a$
files()\md5summe = MD5FileFingerprint("C:\PureBASIC\" + a$)
Else
quit = 1
EndIf
Until quit = 1
Debug "-----------------------------------------"
ResetList(files())
While NextElement(files())
If files()\md5summe <> ""
Debug files()\name + " : " + files()\md5summe
EndIf
Wend
Procedure.s searchlist(nametosearch.s)
ForEach files()
If files()\name = nametosearch
ProcedureReturn files()\md5summe
EndIf
Next
EndProcedure
Debug "-----------------------------------------"
quit = 0
Repeat
Repeat
If NextDirectoryEntry()
a$ = searchlist(DirectoryEntryName())
Debug a$
If a$ = ""
Debug DirectoryEntryName()
Else
If a$ = MD5FileFingerprint("C:\PureBASIC\" + DirectoryEntryName())
;bla
Else
Debug DirectoryEntryName()
EndIf
EndIf
Else
ResetList(files())
quit = 1
EndIf
Until quit = 1
Debug "durchlauf abgeschlossen"
Delay(1000)
ForEver
Schon mal danke im Voraus.