ò?ò how do I copy multiple files in a directory

Use a TsearchRec:

Example below is in use in a program of mine written in Delphi 2.01, so
it should really work with all later versions, too.

HTH,
hannes breuer

{------------------------------------------------------------------------------}

Function FullFileCopy(SrcFile,DestFile : String; OverWrite : Boolean) :
LongInt;
Var
  F : TShFileOpStruct;
  tmpS, tmpD : String;
Begin
  Result := 0;
  If ANSIUpperCase(Trim(SrcFile)) = ANSIUpperCase(Trim(DestFile)) then
Exit;
  tmpS := SrcFile + #0;  //can't do PChar(), second call overwrites
first!
  tmpD := DestFile + #0;
  F.Wnd := Application.Handle;
  F.wFunc := FO_COPY;
  F.pFrom := @tmpS[1];
  F.pTo := @tmpD[1];
  If OverWrite then f.fFlags := FOF_ALLOWUNDO or FOF_NOCONFIRMATION
               else F.fFlags := FOF_ALLOWUNDO;
  FullFileCopy := ShFileOperation(F);
End;

{------------------------------------------------------------------------------}

function CopyAllFilesWithMask(MaskedName, SrcDir,DestDir : String;
OverWrite : Boolean) : LongInt;
var i : Longint;
    sRec : TSearchRec;
begin
  i := 0;
  try
    If FindFirst(SrcDir+MaskedName,faAnyFile,sRec) = 0 then
    repeat
      FullFileCopy(SrcDir+sRec.Name,DestDir + sRec.Name, OverWrite);
      Application.ProcessMessages;
      Inc(i);
    until FindNext(sRec) <> 0;
  finally
    SysUtils.FindClose(sRec);
  end;
  Result := i;
end;