Fórum como copiar arquivos #168382

08/07/2003

0

Boa Tarde......


Alguem poderia me dizer como eu faço para copiar todos os arquivos de uma pasta para outra pelo delphi?


Leandro Jacomete

Leandro Jacomete

Responder

Posts

08/07/2003

Carnette

Copiando arquivos de diretório para diretório

procedure CopyDir(const cFrom, cTo : string);
var
OpStruc : TSHFileOpStruct;
frombuf, tobuf : array[0..128] of Char;
begin
FillChar(frombuf, Sizeof(frombuf), 0);
FillChar(tobuf, Sizeof(tobuf), 0);
StrPCopy(frombuf, cFrom);
StrPCopy(tobuf, cTo);
with OpStruc do
begin
Wnd := Application.Handle;
wFunc := FO_COPY;
pFrom := @frombuf;
pTo := @tobuf;
fFlags := FOF_NOCONFIRMATION or FOF_RENAMEONCOLLISION;
fAnyOperationsAborted := False;
hNameMappings := nil;
lpszProgressTitle := nil;
end; // with
ShFileOperation(OpStruc);
end; // CopyDir

Chamada da procedure

CopyDir(Origem,Destino);


Responder

Gostei + 0

08/07/2003

Thaisandrade

Você pode usar a função CopyFile(Origem,Destino). Para isso você deve acresentar FileCtrl. Essa função necessita de um arquivo chamado ´fmxutils.dcu´. O arquivo que gera esse .dcu ´fmxutils.pas´, encontra-se na pasta do Delphi (Não sei o local exatamente).


Responder

Gostei + 0

08/07/2003

Marcelo Saviski

procedure TForm1.Button2Click(Sender: TObject);
var
SR: TSearchRec;
I: integer;
Origem, Destino: string;
begin
I := FindFirst(´c:\Origem\*.*´, faAnyFile, SR);
while I = 0 do
begin
if (SR.Attr and faDirectory) <> faDirectory then
begin
Origem := ´c:\Origem\´ + SR.Name;
Destino := ´c:\Destino\´ + SR.Name;
if not CopyFile(PChar(Origem), PChar(Destino), true) then
ShowMessage(´Erro ao copiar ´ + Origem + ´ para ´ + Destino);
end;
I := FindNext(SR);
end;
end;

Tirei isso aqui do Clube Delphi de Dicas e macetes


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar