Ir para conteúdo
  • Cadastre-se

dev botao

Verifica se o arquivo existe antes de baixar pelo ACBR Download


Rodrigo Cardilo
  • Este tópico foi criado há 3083 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Bom dia amigos,

 

Estou utilizando o ACBRDownload sem problemas. Mas gostaria de saber se existe um recurso que me ajudaria muito:

 

As vezes tento fazer download de um arquivo txt que não está no meu servidor web. (ex: www.cardilo.com/clientes/70.txt) 

Queria saber se existe uma forma do ACBRDownload verificar se existe esse arquivo e só assim fazer o download.

Hoje, quando tento fazer isso ele cria aquele arquivo 70.txt.part e não me retorna erro algum.

Uma outra possibilidade seria ele me retornar que não conseguiu fazer o download e eu parar o mesmo.

 

Grato,

 

Rodrigo Cardilo

Rodrigo Cardilo

Card System Info

[email protected]

Link para o comentário
Compartilhar em outros sites

Isso não passa ser uma função do ACBrDownload, nesse caso vc terá que usar outro componente em conjunto com ele para saber se o arquivo exita e dai sim dispara-lo para fazer o download.

--
Isaque Pinheiro
Aracruz/ES - Brasil
___________________________________________________________________________
Site Oficial: www.isaquepinheiro.com.br 
Youtube: youtube.com/isaquepinheirooficialbr
Facebook: facebook.com.br/isaquepinheirooficialbr
Instagram: instagram.com/isaquepinheirooficialbr
Linkdin: https://www.linkedin.com/in/isaquepinheirooficialbr

Conheça o Projeto ORMBr Framework for Delphi - https://www.ormbr.com.br

 

Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois ...
  • Membros Pro
Em 23/10/2015 17:57:36, Isaque Pinheiro disse:

Isso não passa ser uma função do ACBrDownload, nesse caso vc terá que usar outro componente em conjunto com ele para saber se o arquivo exita e dai sim dispara-lo para fazer o download.

Oi Isaque... 

Você tem alguma sugestão ou exemplo de como fazer isso?

 

Grato

Rodrigo Cardilo

Card System Info

[email protected]

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
4 horas atrás, datilas disse:

If Not FileExists('70.txt.part') Then

//fazer o download aqui

 

se quiser apagar o arquivo

DeleteFile('70.txt.part')

 

Caro amigo,

 

Eu preciso saber se o arquivo existe no endereço da web e não no meu computador..

Leia novamente minha dúvida inicial no post que vai entender do que se trata.

 

Grato

Rodrigo Cardilo

Card System Info

[email protected]

Link para o comentário
Compartilhar em outros sites

1 hora atrás, cardilo disse:

Caro amigo,

 

Eu preciso saber se o arquivo existe no endereço da web e não no meu computador..

Leia novamente minha dúvida inicial no post que vai entender do que se trata.

 

Grato

(desculpe minha falta de atenção)

se o arquivo no seu site é txt seria mais facil vc fazer um get com indy. 

a vantagem é que ele não vai fazer o download e sim ler o arquivo caso ele não exista vai dar erro 404 que vc pode tratar no seu software

(nós usamos assim para validar a licença do software (data de vencimento bloqueio liberação..) com a vantagem do cliente não ter acesso ao arquivo (criptografado))

Editado por datilas
Link para o comentário
Compartilhar em outros sites

Procedure TForm1.Button1Click(Sender: TObject);
Var
 Retorno: TStringStream;
 ConteudoArquivo: String;
Begin
 Retorno := TStringStream.Create('');

 Try
  IdHTTP1.Get('http://www.cardilo.com/clientes/70.txt', Retorno);
 Except
  // arquivo nao existe
 End;

 ConteudoArquivo := Retorno.DataString;
 //ou
 If ConteudoArquivo = '' Then
 // arquivo nao existe
End;

 

Editado por datilas
Link para o comentário
Compartilhar em outros sites

  • Membros Pro
Em 13/11/2015 18:00:59, datilas disse:

Procedure TForm1.Button1Click(Sender: TObject);
Var
 Retorno: TStringStream;
 ConteudoArquivo: String;
Begin
 Retorno := TStringStream.Create('');

 Try
  IdHTTP1.Get('http://www.cardilo.com/clientes/70.txt', Retorno);
 Except
  // arquivo nao existe
 End;

 ConteudoArquivo := Retorno.DataString;
 //ou
 If ConteudoArquivo = '' Then
 // arquivo nao existe
End;

 

Boa tarde Datilas,

Tentei usar o exemplo que você me passou mas sempre recebo um retorno vazio, mesmo quando o arquivo não existe.

Por exemplo: Tenho o arquivo http://www.cardilo.com/clientes/36.txt e da maneira que você me passou continuo recebendo mensagem de conteúdo vazio.

Como você consegue pegar seus arquivos no servidor na internet?

Grato.

Rodrigo Cardilo

Card System Info

[email protected]

Link para o comentário
Compartilhar em outros sites

2 horas atrás, cardilo disse:

Boa tarde Datilas,

Tentei usar o exemplo que você me passou mas sempre recebo um retorno vazio, mesmo quando o arquivo não existe.

Por exemplo: Tenho o arquivo http://www.cardilo.com/clientes/36.txt e da maneira que você me passou continuo recebendo mensagem de conteúdo vazio.

Como você consegue pegar seus arquivos no servidor na internet?

Grato.

de permisão 755 para pasta "clientes" e todos os seus arquivos

segue print + exemplo delphi7

Http.zip

564a2dcfb8e4b_Semttulo.jpg.d66843a5b1e33

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Oi datilas,

Não consegui fazer funcionar. Tenho 2 provaveis explicações.

1 - Meu servidor de hospedagem (kinghost) tem algum problema

2 - Eu utilizo o delphi 2010 e a versão do Indy pode ser diferente da sua

De qualquer forma obrigado pela atenção.

Em 16/11/2015 17:27:39, datilas disse:

de permisão 755 para pasta "clientes" e todos os seus arquivos

segue print + exemplo delphi7

Http.zip

564a2dcfb8e4b_Semttulo.jpg.d66843a5b1e33

 

Rodrigo Cardilo

Card System Info

[email protected]

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 3083 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.