IdHTTP1 (Indy)

Delphi

10/02/2015

Povo,

Estou usando o objeto IdHTTP da paleta Indy para fazer um download de um site na web. Peguei um exemplo bem simples na net e adaptei para as minhas necessidades.
Tá até funcionando, ele baixa o arquivo corretamente. Porém, coloquei uma progressbar para que o usuário possa acompanhar o download e utilizei os seguintes eventos:

IdHTTPOnWorkBegin

  ProgressBar1.Position := 0;
  JvGIFAnimator1.Animate := True;
  ProgressBar1.Max := AWorkCountMax;
  Label1.caption := 'Download em andamente, espere!';


IdHTTPOnWorkEnd
  ProgressBar1.Position := ProgressBar1.Max;
  JvGIFAnimator1.Animate := False;
  Label1.caption := 'Download Concluído!';
  Atualiza;


IdHTTPOnWork
  ProgressBar1.Position := AWorkCount;


Mais uma vez tudo funcionou. Só que a partir da segunda execução, a barra de rolagem chega até uns 30% e depois a aplicação meio que trava (aparece o "não respondendo" na barra de título. Fica nisso por um tempinho e depois aparece o download concluído normalmente!

Alguém já passou por isso? Precisa fazer mais alguma coisa no IdHTTP?

Outro detalhe que notei é que a mensagem "download em andamento" não aparece para o usuário (mesmo com o download rolando)!

Alguma ideia aí?

Valeu...
Adilson Júnior

Adilson Júnior

Curtidas 0

Respostas

Douglas

Douglas

10/02/2015

Olá Adilson, tudo bem?
Tem um artigo aqui na DevMedia que fala sobre este assunto. Dê uma olhada:
https://www.devmedia.com.br/efetuando-download-com-tidhttp-no-delphi/26731
GOSTEI 0
POSTAR