Neste método eu posso colocar HR_ERRO, porem ele nunca é invocado quando a internet cai ou quando eu retiro o cabo em meio ao download:
procedure TForm1.HookStatus(Sender: TObject; Reason: THookSocketReason;
const BytesToDownload, BytesDownloaded: Integer);
begin
case Reason of
HR_Connect :
begin
ProgressBar1.Position := 0;
bDownload.Enabled := False;
bPause.Enabled := True;
bStop.Enabled := True;
end;
HR_ReadCount :
begin
ProgressBar1.Max := BytesToDownload;
ProgressBar1.Position := BytesDownloaded;
// lConnectionInfo.Caption := 'Baixando...';
end;
HR_SocketClose :
begin
case fACBrDownload.DownloadStatus of
stStop :
begin
ProgressBar1.Position := 0;
lConnectionInfo.Caption := 'Download Encerrado...';
end;
stPause :
lConnectionInfo.Caption := 'Download Pausado...';
stDownload :
// lConnectionInfo.Caption := 'Download Finalizado.';
end;
bDownload.Enabled := True;
bPause.Enabled := False;
bStop.Enabled := False;
end;
end;
end;
Isso ai amigo, fiz isso a partir dele, mas não encontrei nenhuma forma de verificar quando ocorre realmente o erro (internet caiu, por exemplo). Lá tem como verificar quando o download foi finalizado com sucesso.
Bom dia Juliomar, obrigado por me ajudar. Não entendi, vc quis dizer tempo? Não sei onde vejo isso, andei testando no método 'AfterDownload' mas este só é invocado quando o download acaba. Se ao tivesse onde colocar um timeout.
Olá pessoal, já estou procurando a um tempo na web e não vejo uma solução. Estou usando a ACBrDownload para realizar o download (óbvio) de um arquivo e utilizá-lo para atualizar o sistema. Esse donwload é feito a partir de um servidor FTP. O meu problema é por que não encontro nenhuma forma de verificar se ocorreu um erro durante um download, preciso que seja disparado algum evento que me informe que ocorreu um erro.
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.