Setup erstellen mit Inno Setup

André Minhorst, Duisburg

Die Weitergabe von Access-Anwendungen wird umso problematischer, je mehr Komponenten neben der Datenbankdatei für den Betrieb der Anwendung erforderlich sind, je mehr Kopien verteilt werden müssen und je weniger die Empfänger sich mit Access auskennen. Als erschwerender Faktor kommen die unterschiedlichen Access-Versionen hinzu. Wenn Sie neben dem Verteilen von Datenbanken und deren Updates noch Zeit zum Entwickeln finden wollen, finden Sie in diesem Beitrag einen Lösungsvorschlag: Stellen Sie den Anwendern einfach einen Setup-Assistenten zur Verfügung, der Installation und Inbetriebnahme vereinfacht.

Es gibt verschiedene Setuperstellungs-Anwendungen für unterschiedliche Ansprüche. Wise, Install Shield oder der in der Office Developer Edition enthaltene Assistent haben einen entscheidenden Nachteil:

Sie sind nicht umsonst. Die Erstellung eines Setup-Assistenten soll daher anhand des kostenlosen Inno Setup und seinen Erweiterungen beschrieben werden.

Inno Setup ist eine erweiterbare Software zur skriptbasierten Erstellung von Setups für 32-Bit-Windows-Betriebssysteme.

Neben dem eigentlichen Compiler zur Erstellung der Setups gibt es einige weitere Komponenten, z. B. ISTool, einem menü-orientierten Editor, und My Inno Setup Extensions zur Integration weiterer Funktionen per Pascal-Skript.

Im vorliegenden Beitrag lernen Sie die Anwendung von Inno Setup mit dem Editor ISTool kennen. Der zweite Teil dieses Beitrags in der nächsten Ausgabe von Access im Unternehmen beschreibt einige mit Inno-Extensions erstellte Erweiterungen.

Inno Setup

Ein mit Inno erstelltes Setup ist eine ausführbare Datei, die alle benötigten Daten enthält.

Bei Bedarf kann die Setup-Datei auch auf mehrere Dateien aufgeteilt werden. Das Setup hat u. a. folgende Eigenschaften:

  • verschiedene Wizard-Styles
  • Bereitstellung unterschiedlicher Installationsarten mit verschiedenen Komponenten
  • Erstellung von Verknüpfungen im Startmenü und auf dem Desktop
  • Erstellung von Einträgen in .ini-Dateien
  • Anlegen von Registrierungsschlüsseln
  • Bereitstellung von Deinstallationsroutinen und entsprechenden Einträgen
  • ISTool

    ISTool ist ein Editor zur komfortablen Bearbeitung von Setup-Skripts. Er ergänzt die Funktionalität des in Inno Setup enthaltenen Editors vor allem um einige Menüs und Dialoge, mit denen skriptscheue Entwickler (gibt es die) das Setup-Skript auf komfortable Weise erstellen können.

    My Inno Setup Extensions

    My Inno Setup Extensions ist eine Erweiterung von Inno Setup, mit der Sie Setups um weitere Funktionen ergänzen können. Dazu verwenden Sie Pascal-Funktionen, die durch verschiedene Ereignisse (z. B. dem Start des Setup-Vorgangs) ausgelöst werden.

    Hinweis

    My Inno Setup Extensions wird nachfolgend mit Inno-Extensions abgekürzt.

    Die verwendet Pascal-Version enthält eine Reihe von Standard- und Systemfunktionen, die Sie in den Ereignisfunktionen verwenden können.

    Selbstverständlich können Sie von den Ereignisfunktionen auch eigene Funktionen aufrufen. Mit Inno-Extensions können Sie beispielsweise

  • abfragen, ob und in welcher Version Access auf dem Zielrechner installiert ist
  • abfragen, welche Version des Internet Explorer installiert ist
  • abfragen, ob bereits eine ältere Version der zu installierenden Anwendung vorhanden ist
  • eigene Meldungsfenster und Dialoge zwischen die Standarddialoge des Setups schalten.
  • Hinweis

    Die umfassenden Möglichkeiten der hier vorgestellten Komponenten können im Rahmen des vorliegenden Beitrags nicht vollständig beschrieben werden. In der deutschsprachigen Onlinehilfe von Jonny Kwekkeboom finden Sie weitere Informationen. Die Onlinehilfe kann von der Seite http://www.wintax.nl/isx/ heruntergeladen werden.

    Abhängig von Ihren Anforderungen können Sie eine oder mehrere der beschriebenen Komponenten aus dem Internet herunterladen.

    Inno Setup

    Inno Setup ist Freeware und auf der Homepage von Jordan Russel (http://www.jrsoftware.org/) zu finden.

    Die Version 3.0.7 von Inno Setup enthält den Compiler, einen Editor zur Bearbeitung der Setup-Skripte sowie einige weitere Dateien. Da der Editor englischsprachig und nicht besonders komfortabel ist, ist der Einsatz eines alternativen Editors zu empfehlen.

    Hinweis

    Auf der Homepage von Jordan Russel befinden sich einige Links auf anderssprachige Versionen von Inno Setup, die aber in der Regel nicht im aktuellen Versionsstand erhältlich sind.

    Wenn Sie die im zweiten Teil des Beitrages in der kommenden Ausgabe von Access im Unternehmen beschriebenen Inno-Extensions verwenden möchten, empfiehlt sich die Installation von Inno-Extensions statt Inno Setup. Inno-Extensions enthält alle benötigten Dateien wie z. B. den Compiler.

    ISTool

    Im Internetangebot von Bj∅rnar Henden unter der Adresse http://www.istool.org/ finden Sie den Editor ISTool.

    Der Editor enthält Funktionen zum komfortablen Bearbeiten der Einträge von Inno-Skripten. Die mehrsprachige Benutzeroberfläche unterstützt u. a. die deutsche Sprache und als Compiler kann wahlweise Inno Setup oder Inno-Extensions verwendet werden. Die Installation einer der beiden Compiler ist Voraussetzung für die Anwendung von ISTool.

    Inno-Extensions

    Der Download der Inno-Extensions erfolgt vom Internetangebot von Martijn Laan (http://www.wintax.nl/isx/).

    Wie bereits beschrieben, können die Inno-Extensions alternativ zum Inno Setup installiert werden.

    Setup-Sprachpakete

    Die Texte in den Setups sind standardmäßig in Englisch verfasst.

    Wenn Sie eine andere Sprache verwenden möchten, müssen Sie eine alternative Sprachdatei aus dem Internet herunterladen (http://www.istool.org/).

    Ein Tool zum übersetzen der Originaldatei und fertige übersetzungen finden Sie unter http://www2.arnes.si/~sopjsimo/translator.html.

    Das Tool Translator zeigt Original- und Alternativsprache nebeneinander an, wobei Sie die Alternativsprache Ihren Bedürfnissen entsprechend anpassen können.

    Zur Erstellung eines Setup-Skripts starten Sie ISTool und klicken auf die Schaltfläche Neu. ISTool startet nun automatisch einen mit Inno Setup erstellten Assistenten, der allerdings nicht zur Eingabe von Installationsparametern dient, sondern Informationen zur Erstellung des Skripts abfragt.

    Sie können den Assistenten als Starthilfe verwenden oder einfach einmal durch seine Seiten klicken, um sich die Möglichkeiten von Inno Setup anzusehen.

    Der Assistent erstellt aus den eingegebenen Informationen das entsprechende Skript, das Sie anschließend bearbeiten und zur Erstellung des Setups ausführen können.

    Die Erstellung eines Setups wird in den folgenden Abschnitten anhand der Installation einer Beispieldatenbank mit einigen Dateien erläutert.

    Die Aufgabenstellung enthält folgende Punkte:

  • Anlegen einer Access-Datenbank samt .mdw-Datei und Onlinehilfe in einem vom Benutzer festgelegten Verzeichnis
  • Wahlweise Erstellung von Verknüpfungen im Startmenü und auf dem Desktop
  • Bereitstellung dreier Installationsarten (Vollständig, Benutzerdefiniert und Minimal) und ggf. Auswahl der Komponenten
  • Hinweis

    Als Beispieldatenbank verwenden Sie die Musterlösung Stundenzettel.mdb sowie die dazugehörende Arbeitsgruppendatei aus Ausgabe 4/2002 von Access im Unternehmen. Als Dummy-Onlinehilfe können Sie eine beliebige Onlinehilfe verwenden – beispielsweise die aus dem Beitrag Onlinehilfe mit dem HTML Help Workshop aus Ausgabe 6/2002.

    Bereiche des Setup-Skripts

    Das Setup-Skript hat verschiedene Bereiche, die jeweils durch den in eckige Klammern gesetzten Namen des Bereichs eingeleitet werden. Diese werden, soweit benötigt, in den folgenden Abschnitten erläutert.

    Allgemeine Einstellungen

    Im Bereich Setup legen Sie allgemeine Einstellungen wie Anwendungsname, Standardinstallationsverzeichnis, Aussehen des Setups etc. fest.

    Mit ISTool können Sie alle Einstellungen dieses Bereichs im Dialog Setup Options (siehe Bild 1) festlegen, den Sie mit einem Mausklick auf die Schaltfläche Options öffnen.

    Bild 1: Setup-Optionen per Dialog festlegen

    Drei Informationen sind für diesen Bereich des Skripts unbedingt erforderlich:

  • Appname (entspricht dem Feld Anwendungname des Dialogs Setup Options)
  • AppNameVer (Felder Anwendungsname und Anwendungsversion)
  • DefaultDirName (Feld Standard-Verzeichnis auf der nächsten Registerseite des Dialogs namens Pages)
  • Sie haben das Ende des frei verfügbaren Textes erreicht. Möchten Sie ...

    TestzugangOder bist Du bereits Abonnent? Dann logge Dich gleich hier ein. Die Zugangsdaten findest Du entweder in der aktuellen Print-Ausgabe auf Seite U2 oder beim Online-Abo in der E-Mail, die Du als Abonnent regelmäßig erhältst:

    Schreibe einen Kommentar