Keine Ahnung von einen Bug aber mit dem was ich mir gebastelt habe funktioniert jedes Laufwerk.
Code:
procedure THaupt.SEARCH_DIR(Dir, Filter : string; var List : TStringList);
var
SEARCH: TSearchRec;
RES: integer;
begin
Application.ProcessMessages;
RES := findfirst(Dir+'\'+Filter,faanyfile-faDirectory,SEARCH);
try
while RES = 0 do
begin
if (SEARCH.Attr and faDirectory) = 0 then
begin
List.Add(Dir + '\' + SEARCH.Name);
Application.ProcessMessages;
end;
RES := findnext(SEARCH);
end;
finally
findclose(SEARCH);
end;
RES := findfirst(Dir+'\'+'*.*',faanyfile,SEARCH);
try
while RES = 0 do
begin
if (SEARCH.Name <> '.') and (SEARCH.Name <> '..') and ((SEARCH.Attr and faDirectory) <> 0) then
SEARCH_DIR(Dir+'\'+SEARCH.Name, Filter, List);
RES := findnext(SEARCH);
end;
finally
findclose(SEARCH);
end;
end;
Damit habe ich noch nie problemme gehapt.
gsh