procedure CopyFiles(const FromFolder: string; const ToFolder: string);
var
Fo: TSHFileOpStruct;
buffer: array[0..4096] of char;
p: pchar;
begin
FillChar(Buffer, sizeof(Buffer), #0);
p := @buffer;
StrECopy(p, PChar(FromFolder)); //директория, которую мы хотим скопировать
FillChar(Fo, sizeof(Fo), #0);
Fo.Wnd := Application.Handle;
Fo.wFunc := FO_COPY;
Fo.pFrom := @Buffer;
Fo.pTo := PChar(ToFolder); //куда будет скопирована директория
Fo.fFlags := 0;
if ((SHFileOperation(Fo) <> 0) or (Fo.fAnyOperationsAborted <> false)) then
ShowMessage('File copy process cancelled')
end;
procedure TForm1.CopyButtonClick(Sender: TObject); begin CopyFiles('c:\Test','d:\Test'); Showmessage('Copying Complete'); end; |