Creative Commons Lizenzvertrag

Samstag, 16. Januar 2010

Eigene Dialoge in Setup-Projekten des Visual Studios

Laut Microsoft ist es nicht möglich in Setup-Projekten des Visual Studios eigene Dialoge zu verwenden, bzw. bestehende anzupassen. Dies ist allerdings nicht ganz richtig, nur man benötigt dazu mindestens ein weiteres Tool. Das Programm Orca kann dazu benutzt werden neue Dialoge zu erstellen. Dieses Programm ist Bestandteil des MSI-SDK. Die grundlegende Vorgehensweise ist auf CodeProject erklärt. Ich wolle aber es ermöglichen, eine Auswahl an zu installierenden Plugins zu ermöglichen. Auch dazu fand sich eine Lösung. Allerdings gibt es ein paar Fallstricke über die man bei der Benutzung dieses AddIns für VS2008 stolpern kann. Hier eine Auflistung der von mir entdeckten Probleme.

  • Das AddIn startet nicht selbst. Es muss im Visual Studio erst eingeschaltet werden.

  • Es ist mir nicht gelungen das Setupprojekt mit SelectionTree mit den anderen Projekten gemeinsam in einer Projektmappe zu benutzen. Es erfolgte immer die Fehlerausgabe das das die Installer-Api nicht initialisiert werden kann. Ein eigenständiges Setupprojekt funktionierte problemlos.

  • Es muss für jede Datei im Setupprojekt ein Feature angelegt werden. Sind Dateien ohne Featurezuordnung vorhanden wird eine nicht funktionierende MSI-Datei erzeugt

  • Verknüpfungen in einem MergeModul werden nicht installiert! Abhilfe schaft hier nur das nachträgliche bearbeiten der entstandenen MSI-Datei mit Orca. Dazu in der Sektion Shortcuts das dort angegebene DefaultFeature durch ein vorhandenes Feature ersetzen

  • Das Addin kann nur 9 Features integrieren. Wer mehr benötigt kann die entsprechenden MergeModule bereits mit aufnehmen und nachher mit Hilfe von Orca weitere Featues anlegen

  • Die in Orca veränderte Datei, wird beim Speichern unter in Orca zerstört. Deswegen normal speichern

Auch wenn das Ganze mit einigen kleinen Fehlern behaftet ist, eine schnelle und einfache Lösung für jeden der die Feature-Auswahl in seinen Setupprojekten nur gelegentlich braucht.

Kommentare ohne Google+ erstellen:

Marmel powered by Instant Communities