2016-05-17 5 views
1

Ich bin neu bei WIX. Ich habe ein Installationsprogramm erstellt, um eine Website auf IIS zu erstellen. Ich muss dieses Website-Installationsprogramm in zwei weiteren Wix-Projekten verwenden. In einem anderen Projekt erstelle ich zum Beispiel einen Fenster-Service und möchte auch eine Website erstellen. In einem anderen Projekt möchte ich auch eine Datenbank und diese Website erstellen.Wie Sie die Funktionalität in Wix Installer wiederverwenden

Antwort

1

Sie können freigegebene Funktionen in ein wixlib-Projekt einfügen.

Sie im Grunde legte gemeinsame Funktionalität in <Fragmente> Tags und verwendet einen < Element Ref > Tag, um die Fragmente in der Haupt wix Projekt einzubeziehen.

Sie verwenden wahrscheinlich bereits die WixUIExtension, die aussieht, als wäre es im Grunde nur ein Wrapper um die ui.wixlib. Sie übernehmen einen Teil der ui wixlib, wenn Sie tun < UIRef Id = "WixUI_InstallDir > und dann alles im Fragment von WixUI_Installdir.wxs in Ihr Haupt wix Projekt bei der Kompilierung verschmolzen ist. (Ich glaube, der Präprozessor dies der Fall ist)

Also, wenn Sie können Teile Ihres Installationsprogramms identifizieren, die von mehreren Installationsprogrammen gemeinsam genutzt werden, Sie können eine Wix-Bibliothek erstellen, die mehrere InstallComponent.wxs enthält, und eine Möglichkeit, sie in Ihrer Hauptinstallation zu referenzie- ren. Im Allgemeinen kann dies mit UIRef, RegistrySearchRef oder im Fall, wo es kein reales Element gibt, das Sie verwenden können, fügen Sie einfach eine Beschreibungseigenschaft oben in Ihr Fragment ein, so etwas wie

dann können Sie in Ihrem Installer-Projekt auf diese Eigenschaft verweisen, um alles in das Fragment einzufügen, zu dem diese Eigenschaft gehört.

<PropertyRef Id="ComponentNameInclude" /> 

würde ich vorschlagen, durch die wix Quelle zu lesen (verknüpfen ich die Github zu einem der Dateien), um eine bessere Vorstellung davon zu bekommen, wie wix selbst Verwendung einiger wixlibs macht.

Verwandte Themen