Transferindo arquivos via ftp pelo delphi
01/02/2013
0
Estou precisando baixar arquivos via ftp da maquina do usuario, porem se eu faço arquivo por arquivo o arquivo vem sem problemas, mais, se fizer uma rotina para ler todos os arquivos da pasta do ftp o arquivo vem corrompido.
Alguem tem alguma ideia. Segue codigo.
{Procedimento com arquivo perfeito}
Arquivos('Atualizar.exe');//(IdFTP.DirectoryListing[I].FileName);
IdFTP.Get('Atualizar.exe',UVarSys.Config.Ferramentas+'\Atualizar.exe', true);
{Procedimento com arquivo corrompido}
IdFTP.List(ListBox1.Items,'*.exe',False);
i:=0;
if ListBox1.Items.Count > 0 then
Begin
repeat
Arquivos(ListBox1.Items[i]);
Try
IdFTP.Get(ListBox1.Items[i],UVarSys.Config.Ferramentas+'\'+ListBox1.Items[i], true);
Except
Memo.Lines.Add(' Erro ao Baixar Arquivo');
End;
inc(i);
until I = (IdFTP.DirectoryListing.Count);
end;
Obrigado
Highsoft Sistemas
Posts
01/02/2013
Bruno Leandro
IdFTP.List(ListBox1.Items,'*.exe',False);
i:=0;
if ListBox1.Items.Count > 0 then
Begin
repeat
Arquivos(ListBox1.Items[i]);
Try
IdFTP.Get(ListBox1.Items[i],UVarSys.Config.Ferramentas+'\'+ListBox1.Items[i], true);
Except
Memo.Lines.Add(' Erro ao Baixar Arquivo');
End;
inc(i);
until I = (ListBox1.Items.Count -1);
end;
01/02/2013
Highsoft Sistemas
Obrigado pela atenção mais nao deu certo mesmo com aquela linha.
o problema e que os arquivos ficam no formato errado ex:, se for executar o arquivo que foi baixado da a mensagem que nao eh um arquivo win32 valido.
o que mais me deixa louco eh que se eu mando com as duas linhas acima ou senha informando o nome do programa no fonte da certo.
:/
01/02/2013
Highsoft Sistemas
04/02/2013
Daniel Santos
Ja tentou trocar o tipo TransferType para Binary?
05/02/2013
Bruno Leandro
IdFTP.List(ListBox1.Items,'*.*',False);
for i := 0 to ListBox1.Items.Count -1 do
begin
if ListBox1.Selected[I] then
begin
Arquivos(ListBox1.Items[i]);
Try
IdFTP.Get(ListBox1.Items[i],UVarSys.Config.Ferramentas+'\'+ListBox1.Items[i], true);
Except
Memo.Lines.Add(' Erro ao Baixar Arquivo');
End;
end;
end;
16/10/2014
Paulo Oliveira.
Ftp.TransferType := ftBinary;
Clique aqui para fazer login e interagir na Comunidade :)