Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

  • Membros Pro
Postado

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]

Postado

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

 

  • 3 semanas depois ...
  • Membros Pro
Postado
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]

Postado
1 hora atrás, cardilo disse:

Oi Isaque... 

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

 

Grato

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

//fazer o download aqui

 

se quiser apagar o arquivo

DeleteFile('70.txt.part')

 

  • Membros Pro
Postado
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]

Postado (editado)
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
Postado (editado)
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
  • Membros Pro
Postado
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]

Postado
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

  • Membros Pro
Postado

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]

  • Este tópico foi criado há 3297 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.