Ich mache es ungefähr so:
Alle Dateien erstmal mit "suchen" und in eine Liste, z.B. TStringList schreiben.
Diese gehe ich dann mit einer for-Schleife durch, ja. Wenn die Schleife fertig ist, hab ich genau das erreicht, was du oben gefragt hast.
Delphi-Quellcode:
var i: Integer; sl: TStringList;
begin
sl: TStringList.Create;
// Hardcodiert, zum Test
sl.Add('C:\file1.exe');
sl.Add('C:\file2.exe');
sl.Add('C:\file3.exe');
try
for i := 0 to sl.Count - 1 do
begin
Application.ProcessMessages;
CopyFile(PWideChar(sl.Strings[i]), PWideChar('C:\neuerOrdner\' + ExtractFileName(sl.Strings[i])));
end;
finally
sl.Free;
end;
end;