Home » Tutorials » Third-Party-Komponenten » DelphiZip

DelphiZip

Einführung

Wer im Internet unterwegs ist, dem sind sicherlich schn Dateien mit der Endung *.zip über den Weg gelaufen. Es handelt sich dabei um ein Zip-Archiv. Große Dateien werden über einen speziellen Algorithmus verlustfrei komprimiert. Je nach Dateityp lassen sich beträchtliche Erfolge erzielen. Reine Textdateien lassen sich sehr gut komprimieren, vorkomprimierte Dateien, wie z.B. JPG- oder MP3-Dateien, schlechter.
Jetzt möchtest Du auch in Deinem Programm Dateien packen und entpacken? Es gibt eine kostenlose Freeware/OpenSource-Komponente namens DelZip. Sie ist vollständig PKZIP-kompatibel und lässt sich auf dieser Seite beziehen: http://www.geocities.com/rjpeters_au/zipmaster.html.
Zusätzlich zu den Quellcodes der mitgelieferten Komponenten befinden sich in dem Archiv 6 Demos, die viele Funktionen anhand ObjectPascal Code demonstrieren, die benötigten DLLs, eine englischsprachige Hilfedatei und das SFX-Modul.

Installation

Nachdem sie das Archiv gedownloadet haben, muss es installiert werden. Hinter dem Zip-Archiv steckt ein SFX-Installer. Dies ist der Installer, den man mithilfe der Zip-Komponente erstellen kann. Die eigentliche Installation gestaltet sich etwas umständlich. Für Anwender einer Delphi 5-Version wird folgendes funktionieren:

  • Menü: Komponente|Komponente installieren
  • Tab: In neues Packages
  • Name der Unit: ZipMstr.pas
  • Name des Packages: zip.dpk
  • Beschreibung: Zip- und Unzip Library
  • OK

Weitere Meldungen (ala „Package wird installiert“) bestätigen.
Nun sollte die Meldung erscheinen, dass die Komponente TZipMaster erfolgreich installiert werden konnte. Nun fügt man dem Package (das Package-Übersichtsfenster sollte noch offen sein) die Unit SortGrid.pas hinzu und kompiliert es erneut. Dadurch wird die Komponente TSortGrid installiert.
Die beiden neuen Komponenten befinden sich auf der Komponentenreiter ‚Samples‘. TZipMaster kapselt den Zugriff auf die Entpack/Pack-Routinen der DLLs, die sich im Verzeichnis Dll befinden. Ohne diese Dlls, die auch im späteren Programm mitgeliefert werden müssen, ist es nicht möglich Archive zu packen, lesen oder zu entpacken. TSortGrid ähnelt stark der TStringGrid-Komponente. Mit ihrer Hilfe lassen sich recht einfach die Header von Zip-Archiven auslesen und anzeigen.

Anmerkung: Laut Readme.txt lässt sich die Komponente ab Delphi 2 nutzen.