Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#54

Re: TWebUpdate - eine neue WebUpdate-Komponente

  Alt 1. Jul 2008, 18:41
Hier sind bestimmt noch Units drin, die nicht gebraucht werden (z.B. Graphics, Controls)
Delphi-Quellcode:
unit WebUpdate;
interface
{$i WebUpdate.inc}
// Diverse Compilerschalter.
// bitte dringend überprüfen, ob diese euren Anforderungen gerecht werden.,
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Und noch ne Idee:
Man sollte die Update-Komponente vom Downloader trennen.
Soll heisen, es wäre gut, wenn man Indy ganz einfach durch etwas anderes austauschen könnte.
Der Downloader hat ja nicht anderes zu tun, als eine URL herunterzuladen und in einer best. Datei abzulegen.
Dabei soll er aber nach Möglichkeit OnProgress Event unterstützen, damit man ggf. eine ProgressBar ansteuern kann.
Delphi-Quellcode:
TDownloader = class(TObject)
public
   procedure DownloadURL(const URL, DestFilename : string); virtual;
   property OnProgress: TProgressEvent;
end;
Davon könnte man konkrete Klassen ableiten: TIndy9Downloader, TIndy10Downloader und TSimpleDownloader.
TSimpleDownloader benötigt kein Indy, sondern verwendet die Funktion URLDownloadToFile aus Unit UrlMon.
Dafür kann der TSimpleDownloader keine ProgressEvents erzeugen; aber das kann man verschmerzen.
Wenn ein Downloader eine URL nicht runterladen konnte, dann wirft er eine Exception.
Andreas
  Mit Zitat antworten Zitat