Ich such mit dem folgenden Code nach Mp3-Dateien in einem Verzeichnis. Die Ergebniss werden dann in einer Listbox dargestellt. Gibt es eine alternative, so dass ich die Ergebnisse nur im Speicher merke, aber nicht anzeige? Die Daten der Listbox werden dann als nächstes in eine Datenbank übertragen, dann brauch ich die Listbox nicht mehr.
Delphi-Quellcode:
procedure GetAllFilesEM(Path, ExtMask: String; List: TStrings;
SubFolder: Boolean);
var
Attrib, k: Integer;
Search: TSearchRec;
begin
Attrib := faArchive + faReadOnly + faHidden;
if Path[Length(Path)] <> '\' then Path := Path + '\';
with TStringList.Create do
try
CommaText := ExtMask;
for k := 0 to Count - 1 do
if FindFirst(Path + '*.' + Strings[k], Attrib, Search) = 0 then
repeat
List.Add(AnsiUpperCase(Path + Search.Name));
until FindNext(Search) <> 0;
FindClose(Search);
finally Free end;
if SubFolder then
begin
if FindFirst(Path + '*.*', faDirectory, Search) = 0 then
begin
repeat
if ((Search.Attr and faDirectory) = faDirectory) and
(Search.Name[1] <> '.') then
GetAllFilesEM(Path + Search.Name, ExtMask, List, SubFolder);
until FindNext(Search) <> 0;
FindClose(Search);
end;
end;
end; {Popov}
Danke,
Marcel