Das ist mal ein Auszug aus 'ner kleinen
Unit, die ich mir mal vor 'ner Weile erstellt hab'.
Das Teil ist zwar noch nicht das Beste, aber es läuft.
Da wird dir ja nur als Beispiel dienen können, da ich es speziell für mich ausgelegt hab. Wie du zum Beispiel sehn wirst, weiß ich schon vor dem Download, wie groß eie Datei ist, die geladen wird. Aussrdem geb ich den Dateinamen für den Download nicht direkt an - der wird dort drin erst noch zusammengesetzt...
Aufrufen kann man es z.B. so
Delphi-Quellcode:
DownloadThread_1, DownloadThread_2, DownloadThread_3: TDownloadThread;
DownloadThread_1 := TDownloadThread.Create(Label1, Label2, Label5, Label3, ProgressBar1, 'http://www.fnse.de/', 'Smilies_Update.Hash', 57);
DownloadThread_2 := TDownloadThread.Create(Label7, Label8, Label9, Label10, ProgressBar3, 'http://www.fnse.de/', 'Smilies_Update.Daten', 150000);
Repeat Application.ProcessMessages; Until DownloadThread_1.fertig and DownloadThread_2.fertig;
Sleep(50);
DownloadThread_1.Free;
DownloadThread_2.Free;
Delphi-Quellcode:
// z.B.:
// URL = 'http://www.fnse.de/'
// Dateiliste[0].Datei = '..\Smilies_L01\002.gif'
...
DownloadThread_1 := TDownloadThread.Create(Label1, Label2, Label5, Label3, ProgressBar1,
URL, Dateiliste[I_1].Datei, Dateiliste[I_1].Groese);
...