Hi.
Du hast ja gar keine Rekursion in deinem Code - ohne bleibt er dann hängen. Ich habe deinen Code nochmal etwas abgeändert:
Delphi-Quellcode:
procedure AllFiles(folder: string; mask: string = '*.*'; s: TStrings);
var
sr: TSearchRec;
begin
folder := IncludeTrailingPathDelimiter(folder);
if FindFirst(folder + mask, faAnyFile, sr) = 0 then
try
repeat
if (sr.Name = '.') or (sr.Name = '..') then
Continue
else
if (sr.Attr and faDirectory) = faDirectory
then AllFiles(folder + sr.Name, mask, s)
else s.Add(folder + sr.Name);
until FindNext(sr) <> 0;
finally
FindClose(sr);
end;
end;
Grüße vom marabu