So, wie oben schon gesagt, habe ich die Struktur der Klasse etwas geändert und zusätzlich noch einen Fortschritt eingebaut und die Möglichleit das ganze abzubrechen.
Die öffentlichen Methoden den Klasse sehen jetzt so aus:
Delphi-Quellcode:
constructor Create(const ArchiveFile: string);
procedure AddFiles(Files: TStrings); // Dateinhinzufügen
property FileCount: Cardinal read GetFileCount; // Datein im Archiv ermitteln
property Contents: TStrings read GetContents; // Inhalt des Archives
procedure ExtractSingleFile(Index: Integer; const Dir: string); // einzelne Datei extrahieren.
procedure ExtractAll(const Dir: string); // alle Dateien extrahieren (ruft ExtractSingleFile auf ;) )
property OnTotalProgress: TOnTotalProgress read FOnTotalProgress write
FOnTotalProgress; // gesamt Fortschritt
property OnFileProgress: TOnFileProgress read FOnFileProgress write
FOnFileProgress; // Fortschritt in der Datei
Downloadlink siehe oben.