Setup erstellen mit Inno Setup

Lies diesen Artikel und viele weitere mit einem kostenlosen, einwöchigen Testzugang.

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)
  • Für DefaultDirName können Sie entweder ein Verzeichnis festlegen oder eine Konstante angeben, die bei der Installation durch ein entsprechendes Verzeichnis ersetzt wird.

    Konstanten für Standardverzeichnisse

    Da Sie nicht wissen können, auf welchem Laufwerk sich beispielsweise das Verzeichnis Programme befindet, stellt Inno Setup einige Konstanten zur Verfügung, die bei der Ausführung des Setup durch die auf dem Zielsystem gültigen Verzeichnisse ersetzt werden (s. Tab. 1).

    Festlegen der Einstellungen im Bereich Setup

    Wenn Sie im Dialog Setup Options den Anwendungsnamen und die Versionsnummer wie in Bild 1 und den Eintrag {pf} als Standardverzeichnis angeben und die anderen Einstellungen beibehalten, erhalten Sie das Skript aus Bild 2. Zum Anzeigen des Skripts in ISTool wählen Sie in der Menüleiste den Befehl Sections/Script aus oder betätigen die Tastenkombination Strg + 0.

    Konstante

    Verzeichnis

    {win}

    Windows-Verzeichnis

    {sys}

    Windows-Systemverzeichnis

    {src}

    Verzeichnis von Setup

    {sd}

    Systemverzeichnis

    {pf}

    Programme-Verzeichnis

    Tab. 1: Verzeichniskonstanten

    Bild 2: Der Bereich Setup im Editor

    Die anderen Registerblätter des Dialogs Setup Options enthalten einige Voreinstellungen, die nicht in dem Skript erscheinen.

    Dabei handelt es sich um Standardwerte, die nicht explizit angegeben werden müssen.

    Setupsprache anpassen

    Wenn Sie deutsche Setups erstellen möchten, müssen Sie noch einen weiteren Parameter angeben:

    MessagesFile=compiler:german.isl

    Die Datei german.isl, die Sie entweder aus dem Internet herunterladen oder selbst mit der oben erwähnten Anwendung Translator erstellen können, speichern Sie im dem Verzeichnis, in dem sich auch der Compiler befindet.

    Standardverzeichnis für Startmenüeinträge

    Um dem Benutzer eine sinnvolle Voreinstellung für das Anlegen von Startmenüeinträgen zu geben, legen Sie noch den folgenden Eintrag im Bereich Setup an:

    DefaultGroupName=Stundenzettel

    Uninstalleintrag festlegen

    Das Setup legt automatisch einen Eintrag zum Deinstallieren der Anwendung an. Damit die Anwendung namentlich in der Liste unter Start/Systemsteuerung/Software erscheint, verwenden Sie den folgenden Eintrag:

    UninstallDisplayName=Stundenzettel

    Dateien festlegen

    Im Bereich [Files] geben Sie Dateiname, Zielpfad und weitere Informationen zu den einzubindenden Dateien an.

    Bild 3: Schaltfläche New Item

    Bild 4: Eingabe von Informationen über einzubindende Dateien

    Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ...

    Testzugang

    eine Woche kostenlosen Zugriff auf diesen und mehr als 1.000 weitere Artikel

    diesen und alle anderen Artikel mit dem Jahresabo

    Schreibe einen Kommentar