Verwenden transitiver Komponenten

Eine typische Verwendung für transitive Komponenten ist, ein Produkt vorzubereiten, das während eines Systemupgrades neu installiert werden soll. Die/der Autor*in des Installationspakets gibt an, dass die Komponenten, die während eines Systemupgrades ausgetauscht werden müssen, das transitive Attribut aufweisen. Wenn Benutzer*innen das System später aktualisieren, muss das Produkt neu installiert werden. Nach dieser Neuinstallation entfernt das Installationsprogramm die früheren Komponenten und installiert die späteren Komponenten, ohne dass das gesamte Produkt installiert werden muss.

So schließen Sie zwei transitive Komponenten in das Installationspaket ein

  1. Schließen Sie beide transitiven Komponenten in das Installationspaket ein.

  2. Erstellen Sie beide transitiven Komponenten wie reguläre Komponenten in der Component-Tabelle. Jede transitive Komponente muss über eine eigene eindeutige GUID verfügen, die in der Spalte ComponentId angegeben ist.

  3. Fügen Sie für jede transitive Komponente das Bit msidbComponentAttributesTransitive in die Spalte „Attributes“ der Component-Tabelle ein. Wenn dieses Bit festgelegt ist, wertet das Installationsprogramm den Wert der Anweisung in der Spalte „Condition“ bei einer Neuinstallation neu aus.

    Wenn der Wert zuvor FALSE war und in TRUE geändert wurde, installiert das Installationsprogramm die Komponente.

    Wenn der Wert zuvor TRUE war und in FALSE geändert wurde, entfernt das Installationsprogramm die Komponente auch dann, wenn sie über andere Produkte als Clients verfügt.

    Hinweis

    Sofern das transitive Bit nicht festgelegt ist, bleibt die Komponente nach der Installation aktiviert, auch wenn die bedingte Anweisung bei einer nachfolgenden Wartungsinstallation des Produkts als FALSE ausgewertet wird. Die Bedingungen dürfen nur auf Computerzuständen basieren. Bedingungen, die auf Benutzerzuständen oder Eigenschaften basieren, die in der Befehlszeile festgelegt sind, sind nicht geeignet, da sie dazu führen können, dass das Installationsprogramm bei jeder Verwendung durch eine*n andere*n Benutzer*in eine Neuinstallation des Produkts erfordert.

     

  4. Geben Sie ergänzende bedingte Ausdrücke in die Condition-Felder der Control-Tabelle ein, sodass dann, wenn sich die Bedingung für die erste transitive Komponente in FALSE ändert, die Bedingung für die zweite transitive Komponente in TRUE ändert. Dies führt dazu, dass die erste Komponente entfernt und die zweite Komponente bei der Neuinstallation der Anwendung installiert wird.

Eine Neuinstallation des Produkts ist erforderlich, um die transitiven Komponenten zu wechseln. Paketautor*innen müssen Benutzer*innen daher eine Methode zum erneuten Installieren des Produkts und zum Festlegen der Modi der REINSTALLMODE-Eigenschaft bereitstellen. Es gibt im Grunde drei Möglichkeiten, die Neuinstallation auszulösen:

Das Bit sollte nur mit Bedingungen verwendet werden, die auf Computerzuständen basieren. Bedingungen, die auf Benutzerzuständen oder Eigenschaften basieren, die in der Befehlszeile festgelegt sind, sind nicht geeignet, da sie dazu führen können, dass das Installationsprogramm bei jeder Verwendung durch eine*n andere*n Benutzer*in eine Neuinstallation des Produkts erfordert.

Hinweis

Sofern das Transitive-Bit in der Spalte „Attributes“ nicht für eine Komponente festgelegt ist, bleibt die Komponente nach der Installation aktiviert, auch wenn die bedingte Anweisung in der Spalte „Condition“ bei einer nachfolgenden Wartungsinstallation des Produkts FALSE ergibt.

Wenn eine Anwendung transitive Komponenten enthält, benötigt Windows Installer in den meisten Fällen die Quelle der Anwendung, um die Anwendung zu reparieren oder zu aktualisieren. In diesen Fällen funktioniert die von einem Originalgerätehersteller gelieferte CD-ROM für die Systemwiederherstellung nicht, und es muss eine tatsächliche Installationsquelle für die Anwendung bereitgestellt werden.