Criar Gerenciador de Downloads

Hoje irei ensinar a vocês a criar um Gerenciador de Downloads!


Explicação:


Oque é um Gerenciador de Downloads?

Citação:
Um gerenciador de downloads é um programa de computador criado para baixar ou fazer downloads de arquivos da Internet.



Tutorial:


1- Inicie um novo projeto : File / New / VCL Form Aplication;

2- Coloque um Button, um Edit, um Progressbar e um Label, e um idHTTP (Paleta Indy Clients);

3- No evento 
OnClick (Para Quem Não Sabe OnClick é Só Clicar 2 Vezes No Button e colar o Código entre as Palavras Begin e End.) do Button apague o Begin e o End; e coloque o código abaixo:
Código:
var
  URL, Arq : string;
  MyFile: TFileStream;
begin 
// Definir o link
URL := Edit1.Text;  // Aqui fica o caminho de onde ira fazer o download , pode ser trocado por um edit, etc..
Arq := ExtractFileName(StringReplace(URL,'/','\',[rfReplaceAll]));
  try  // Nome do arquivo para download
MyFile := TFileStream.Create('C:+Arq, fmCreate);  //Local no hd e nome do arquivo com a extensão, onde vai salvar.
try
 IdHTTP1.Get(URL, MyFile); // Fazendo o download do arquivo
finally
MyFile.Free;
end;
4- No evento OnWork do id.(Propriedades do idHttp1 / Eventos / OnWork.Clique 2 Vezes e cole o Código.)

Código:
ProgressBar1.Position := AWorkCount;
5- No evento OnWorkBegin do id(Propriedades do idHttp1 / Eventos / OnWorkBegin.Clique 2 Vezes e cole o Código.)

Código:
ProgressBar1.Position := 0;
ProgressBar1.Max := AWorkCountMax;
Label1.caption := Download em andamento, espere!;
6- No evento OnWorkEnd do id.(Propriedades do idHttp1 / Eventos / OnWorkEnd.Clique 2 Vezes e cole o Código.)
Código:
ProgressBar1.Position := ProgressBar1.Max;
Label1.caption := Download Concluído!;
7- Agora dê F9, e teste a aplicação.