Fórum Ajuda FTP Indy erro ao deletar #395673

14/02/2011

0

Galera, bom dia

Tenho o seguinte codigo

  qryftp.Close;
  qryftp.Open;
  try
    Ftp.Disconnect;
    ftp.Host:= qryftpftp.AsString;
    Ftp.Username:= qryftpusuario.AsString;
    ftp.Password:= qryftpsenha.AsString;
    Ftp.Connect;

    mmmensagem.Clear;
    ftp.ChangeDir(qryftporigemdownload.AsString);
    t := TStringList.Create;
    ftp.List(t,'*.xml',false); //Carrega a lista de Arquivos encontrados no FTP
      for i := 0 to FTP.DirectoryListing.Count -1 do
      begin
         with TZReadOnlyQuery.Create(nil)do
         try
           Connection := dm.MyDB;
           sql.Add('SELECT * FROM ARQUIVOSPROCESSADOS WHERE DESCRICAO='''+ftp.DirectoryListing.Items[i].FileName+'''');
           OPEN;
           if RecordCount=0 then
           begin
             mmmensagem.Lines.Add(ftp.DirectoryListing.Items[i].FileName);
             Ftp.Get(qryftporigemdownload.AsString+'/'+ftp.DirectoryListing.Items[i].FileName, qryftpdestinodownload.AsString + '\'+ftp.DirectoryListing.Items[i].FileName, false);
             ftp.Delete(ftp.DirectoryListing.Items[i].FileName); O ERRO OCORRE AQUI
           end;
         finally
           free;
         end;
      end;
  except
     showmessage('Erro na atualização');
     Exit;
  end;

Quando vou deletar o arquivo no ftp, esta me retornando erro de acesso negado e nao deleta.
Algum pode me ajudar?

Agua Cascatai

Agua Cascatai

Responder

Posts

01/04/2011

Geraldo Ferreira

Bem você já usou o comando change dir no seu código mas posso sugerir que você coloque o caminho completo no comando Delete assim como colocou no comando Get.

Ftp.Get( qryftporigemdownload.AsString+'/'+ftp.DirectoryListing.Items[i].FileName
            , qryftpdestinodownload.AsString + '\'+ftp.DirectoryListing.Items[i].FileName
            , false);

       Ftp.Delete(qryftporigemdownload.AsString+'/'+ftp.DirectoryListing.Items[i].FileName); O ERRO OCORRE AQUI
Responder

Gostei + 0

16/04/2013

José

Este tópico esta sendo fechado por inatividade. Se necessário, sinalizar para que seja reaberto ou abrir um novo.
Responder

Gostei + 0

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

Aceitar