Hola jbecerra.
Espero haber entendido...
Para Windows:
Código Delphi
[-]
...
implementation
uses Windows, ShellApi;
procedure CopyFolderFiles(sourceFolder, targetFolder: string);
const
FOF_NORECURSION = $1000;
var
SHFOS: SHFILEOPSTRUCT;
begin
sourceFolder:= IncludeTrailingPathDelimiter(sourceFolder)+'\*.*';
targetFolder := ExcludeTrailingPathDelimiter(targetFolder);
ZeroMemory(@SHFOS, SizeOf(SHFOS));
SHFOS.wFunc:= FO_COPY;
SHFOS.fFlags:= FOF_FILESONLY or FOF_NORECURSION;
SHFOS.hNameMappings:= nil;
SHFOS.pFrom:= PChar(sourceFolder+#0+#0);
SHFOS.pTo:= PChar(targetFolder+#0+#0);
SHFileOperation(SHFOS);
end;
Llamada ej.:
Código Delphi
[-]
begin
CopyFolderFiles2('C:\UNA_CARPETA', 'C:\OTRA_CARPETA');
Saludos