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?
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
Curtir tópico
+ 0
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
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
Clique aqui para fazer login e interagir na Comunidade :)