Irgendwie komme ich nicht weiter. Ich will nur die Ordner eines Verzeichnisses auslesen (also ohne Dateinamen). Zwar hab ich das noch nie gemacht, ich war mir aber sicher, daß man da an FindFirst nur das faDirectory übergeben muß. Ist aber nicht so. Mit dem Attribut FindFirst werden alle Dateien ausgelesen (zumindest bei mir). Hat einer eine Idee wie man das zu laufen kriegt.
Hier der Code den ich benutze.
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| procedure GetAllFilesF(PathAndMask: String; Sl: TStrings); var Search: TSearchRec; i, Attrib: Integer; begin Attrib := faDirectory;
Sl.Clear; if FindFirst(PathAndMask, Attrib, Search) = 0 then repeat Sl.Add(Search.Name) until FindNext(Search) <> 0;
for i := Sl.Count - 1 downto 0 do if (Sl.Strings[i] = '.') or (Sl.Strings[i] = '..') then Sl.Delete(i); end; |
Es wird ein Pfad mit Maske übergeben. Das Ergebnis landet in der Listbox.