Verzeichnis rekursiv durchlaufen + Callback
Verfasst: 11.12.2006 11:53
Hallo!
Mit dem folgenden Code könnt Ihr einen anzugebenden Pfad rekursiv durchlaufen. Eine zu "registrierende" Callback-Prozedur wird dann entsprechend aufgerufen.
Viel Spaß,
Didel.
Mit dem folgenden Code könnt Ihr einen anzugebenden Pfad rekursiv durchlaufen. Eine zu "registrierende" Callback-Prozedur wird dann entsprechend aufgerufen.
Code: Alles auswählen
ProcedureDLL PBE_ScanPath(path.s, callbackProcedure.l) ; Scan the given path recursively and call callback (format dirId.l, path.s).
Protected dirId.l
dirId = ExamineDirectory(#PB_Any, path, "*.*")
If (dirId)
While NextDirectoryEntry(dirId)
If DirectoryEntryType(dirId) = #PB_DirectoryEntry_File
CallFunctionFast(callbackProcedure, dirId, path)
Else
name.s = DirectoryEntryName(dirId)
If (name <> "." And name <> "..")
CallFunctionFast(callbackProcedure, dirId, path)
PBE_ScanPath(path + DirectoryEntryName(dirId) + "\", callbackProcedure)
EndIf
EndIf
Wend
FinishDirectory(dirId)
EndIf
EndProcedure
Didel.