uses ShellApi;
function rtnBackup_Total(DirFonte,DirDest : String) : Boolean;
var
ShFileOpStruct : TShFileOpStruct;
begin
Result := False;
if DirFonte = '' then
raise Exception.Create(
'Diretório fonte não pode ficar em branco');
if DirDest = '' then
raise Exception.Create(
'Diretório destino não pode ficar em branco');
if not DirectoryExists(DirFonte) then
raise Exception.Create('Diretório fonte inexistente');
DirFonte := DirFonte+#0;
DirDest := DirDest+#0;
FillChar(ShFileOpStruct,Sizeof(TShFileOpStruct),0);
with ShFileOpStruct do begin
Wnd := Application.Handle;
wFunc := FO_COPY;
pFrom := PChar(DirFonte);
pTo := PChar(DirDest);
fFlags := FOF_ALLOWUNDO or FOF_SIMPLEPROGRESS or
FOF_NOCONFIRMATION;
end;
ShFileOperation(ShFileOpStruct);
end;
function rtnBackup_Total(DirFonte,DirDest : String) : Boolean;
var
ShFileOpStruct : TShFileOpStruct;
begin
Result := False;
if DirFonte = '' then
raise Exception.Create(
'Diretório fonte não pode ficar em branco');
if DirDest = '' then
raise Exception.Create(
'Diretório destino não pode ficar em branco');
if not DirectoryExists(DirFonte) then
raise Exception.Create('Diretório fonte inexistente');
DirFonte := DirFonte+#0;
DirDest := DirDest+#0;
FillChar(ShFileOpStruct,Sizeof(TShFileOpStruct),0);
with ShFileOpStruct do begin
Wnd := Application.Handle;
wFunc := FO_COPY;
pFrom := PChar(DirFonte);
pTo := PChar(DirDest);
fFlags := FOF_ALLOWUNDO or FOF_SIMPLEPROGRESS or
FOF_NOCONFIRMATION;
end;
ShFileOperation(ShFileOpStruct);
end;
Nenhum comentário:
Postar um comentário