Prueba así:
Código Delphi
[-]
function FCopy(Handle: HWND; From, Dest: String): integer;
var
FS: SHFILEOPSTRUCT;
begin
ZeroMemory(@FS, sizeof(SHFILEOPSTRUCT));
FS.wnd:= Handle;
FS.wFunc:= FO_COPY;
FS.pFrom:= PCHAR(From + #0#0);
FS.pTo:= PCHAR(Dest + #0#0);
FS.fFlags:= FOF_NOCONFIRMATION;
Result:= SHFileOperation(FS);
end;
Ejemplo de uso:
Código Delphi
[-]FCopy(Handle, 'D:\Cazador\*.*', 'D:\Cazador2\otra');
Se copian todos los archivos de la carpeta D:\Cazador a la carpeta D:\Cazador2\otra si no existe la carpeta la crea.
Saludos.