Hi,
sicher hast du vor "FindFirst / FindNext" zu benutzen (Details dazu siehe Delphi-Hilfe).
Damit kann man auch nach Verzeichnissen suchen und zwar (auch in Delphi-Hilfe nachzulesen) erkennst du ein Verzeichnis daran, dass
Delphi-Quelltext
1:
| SearchRec.Attr AND faDirectory > 0 |
Immer wenn du nun ein Verzeichnis findest, kannst du darin wieder (rekursiv) suchen und so alle Dateien finden.
Ein grobes Schema wäre also:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| procedure findAllFilesAndDoSomething(_RootDir, _FileMask: String); var SearchRec: TSearchRec; begin .... if SearchRec.Attr and faDirectory > 0 then findAllFilesAndDoSomething(_RootDir + SearchRec.name, _FileMask) else if passtZurMaske(SearchRec.Name, _FileMask) then doSomething(SearchRec.Name); end; |
Fiel mir grad noch ein: Bei der Prüfung ob es ein Verzeichnis ist, musst du vielleicht noch ausschließen, dass es sich um '.' oder '..' handelt, weil die auch als Verzeichnisse gelten....