Skip to content

Einfache und kleine Installer mit 7-Zip selbstgebaut

Es muß nicht immer ein ausgewachsener Installer mit NSIS oder ähnlicher Software sein. Wenn man einfach nur eine Sicherheitsabfrage ("Software XYZ jetzt installieren?") haben möchte und anschließend die Setup.exe nach dem Entpacken des Distributionsarchivs automatisch aufgerufen werden soll, so kann man dafür auch 7-Zip nehmen.

SevenZip ist ein Packer/Archiver, der sowohl eine Commandline-Version wie auch einen eigenen File-/Archivmanager mitbringt. Wer schon einmal über die Dateiendung 7z gestolpert ist, kennt den 7-Zip bereits. Der verwendete Algorithmus ist LZMA, welcher eine deutlich höhere Kompression als *zip erreicht.

Angenommen, man hat ein Verzeichnis mit vielen Dateien (mydir) und einer Setup.exe. Daraus möchte man eine einzige Datei machen, nämlich eine kleinere Setup.exe.

  1. Man komprimiert das Verzeichnis mittels 7-Zip zuerst einmal mit höchster Kompression (Ultra) in eine Datei (z.B. mydir.7z). Am bequemsten geht das direkt im Explorer, rechte Maustaste auf das Verzeichnis, "Zu Archiv hinzufügen".
  2. Eine config.txt muss erstellt werden, in der man dem Self-Extractor beschreibt, was er beim entpacken noch tun soll. Diese Datei muß UTF-8 codiert vorliegen und kann zum Beispiel folgenden Inhalt haben:
    ;!@Install@!UTF-8!
    Title="Installer"
    BeginPrompt="Do you want to install this fancy Software?"
    RunProgram="mydir\Setup.exe"
    ;!@InstallEnd@!

  3. Nun fügt man die Einzelteile zu einem gesamten, selbstextrahierenden Archiv zusammen. Dafür wird der copy-Befehl in der Commandline herangezogen:
    copy /b c:\Programme\7-Zip\7zS.sfx + config.txt + mydir.7z mydir_installer.exe

Danach sollte man eine "mydir_installer.exe" im entsprechenden Verzeichnis finden, die dann

  • sehr klein ist im Vergleich mit einem entsprechenden Zip-Archiv,
  • den eigenen Inhalt selbst extrahiert und anschließend die Setup.exe aus "mydir" startet
  • und vor dem Start sogar noch mal fragt, ob der Benutzer das wirklich tun möchte.
Voilà. Möchte man Software per Download verteilen, ist das sicher eine gute Alternative zu kompletten Installer-Archiven.
Kategorien: Tech-O-Rama | 0 Kommentare
Abstimmungszeitraum abgelaufen.
Derzeitige Beurteilung: keine, 0 Stimme(n) 72378 Klicks

Trackbacks

Keine Trackbacks

Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

Noch keine Kommentare

Kommentar schreiben

Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
Um einen Kommentar hinterlassen zu können, erhalten Sie nach dem Kommentieren eine E-Mail mit Aktivierungslink an ihre angegebene Adresse.
BBCode-Formatierung erlaubt
Sie können [geshi lang=LANG][/lang] Tags verwenden um Quellcode abhängig von der gewählten Programmiersprache einzubinden
Formular-Optionen
tweetbackcheck cronjob