Rotina para copiar um arquivo

12/12/2003

1

Olá pessoal,

estou precisando de uma rotina para copiar um arquivo que está em um compartilhamento da rede para outro compartilhamento.

Alguém saberia me dizer como posso fazer esta rotina ?

Obrigado.


Responder

Posts

12/12/2003

Fabio.hc

Eu tenho esta rotina:

Copiar arquivos
{ - Coloque um Button no Form;
- Altere o evento OnClick deste Button conforme abaixo: }

procedure TForm1.Button2Click(Sender: TObject);
var
  Origem, Destino: string;
begin
  Origem := ´c:\Origem\NomeArq.txt´;
  Destino := ´c:\Destino\NomeArq.txt´;
  if not CopyFile(PChar(Origem), PChar(Destino), true) then
    ShowMessage(´Erro ao copiar ´ + Origem + ´ para ´ + Destino);
end;

Observações
No exemplo acima, se o arquivo já existir no destino, a função falha (não copia). Para que a função possa sobreescrever o arquivo destino (caso exista), altere o último parâmetro de CopyFile para false. CUIDADO! Se um arquivo for sobreescrito, estará perdido para sempre!


Responder
tentei usar esta rotina mas não faz nada só aparece o message...

quero copiar do drive a:\ para uma pasta específica...

o que pode estar errado?

Douglas.


Responder

18/12/2003

Elmc2003

Se ajudar baixe o arquivo [url]http://www.aqualid.com.br/backup.exe[/url], fui eu quem fiz, o código é meio feinho mais funciona.


Responder

18/12/2003

Fabio.hc

tentei usar esta rotina mas não faz nada só aparece o message... quero copiar do drive a:\ para uma pasta específica... o que pode estar errado? Douglas.



Origem := ´a:\´;
Destino := pasta específica;

origem vc coloca drive a:\
destino vc coloca a pasta específica...


Responder

18/12/2003

Elmc2003

Baixe o programa zipado do link [url]http://www.propoolline.com.br/soft/backup.exe[/url], descompile em uma pasta, inicie o Delphi, abra o project1 e compile.
Assim funciona.

Qualquer coisa me retorne.[/url]


Responder
obrigado elmc2003 pelo link (vou testar)
obrigado Fabio.HC pela dica (vou testar tb)


Responder

20/12/2003

Tales

Tentei usar o copyfile, mas da erro... acho que tenho que declarar alguma UNIT, mas não sei qual... :roll:


Responder
vc declara a Unit [b:1e7d9b90d1]IdGlobal[/b:1e7d9b90d1].

no meu caso só leu o drive mas não copio nada (o copyfile), mas...
to nos testes ae...


Responder

23/12/2003

Xmagno

Eu tenho um programa de atualizacao de executaveis, que pega parametros da linha de comando, faz a copia e chama o programa:
Ele copia da rede (Origem) e grava em pasta local (Destino)

[]´s
xMagno

var
O, D : String;
Origem : Array[0..255] of char;
Destino: Array[0..255] of char;

begin
O := ParamStr(1);

D := ´C:\APL\´+ExtractFileName(ParamStr(1));
strPCopy( Destino, D );
strPCopy( Origem, O );

//....

TRY
copyFile( Origem, Destino, False );
FINALLY
END;

//.....

end;


Responder