PATCH-Eigenschaft

Das Installationsprogramm legt die PATCH-Eigenschaft auf eine Liste der angewendeten Patches fest, indem MsiApplyPatch, MsiApplyMultiplePatches oder die Befehlszeilenoption /p aufgerufen wird. Sie können die PATCH-Eigenschaft auch in der Befehlszeile festlegen, während Sie ein Paket mithilfe von MsiInstallProduct oder der Befehlszeilenoption /i installieren.

Der Wert der PATCH-Eigenschaft ist eine Liste der Patches, die installiert werden. Jeder Patch in der Liste wird durch den vollständigen Pfad zum Paket des Patches (MSP-Datei) dargestellt. Die vollständigen Pfade in der Liste werden durch Semikolons getrennt.

Windows Installer 2.0: Mehrere Patches werden nicht unterstützt. Windows Installer 3.0 ist erforderlich, um mehrere Patches anzuwenden.

Bemerkungen

Wenn Sie ein Patchpaket mit Msimsp.exe und Patchwiz.dll erstellen, können Sie angeben, dass eine Aktion oder ein Dialogfeld nur ausgeführt wird, wenn ein bestimmter Patch angewendet wird. Wenn Sie das Patchpaket erstellen, z. B. „test.msp“, erstellen Sie ein aktualisiertes Image des Produkts und eine Patcherstellungs-Eigenschaftendatei. Beim Erstellen der Patcherstellungs-Eigenschaftendatei können Sie in das Feld MediaSrcPropName der Tabelle ImageFamilies einen Eigenschaftennamen eingeben, z. B. PATCHFORTEST. Wenn Sie die Sequenztabellen des aktualisierten Images des Produkts erstellen, können Sie in die Spalte „Bedingung“ der Sequenztabelle eine bedingte Anweisung für die Aktion oder das Dialogfeld einschließen, die Sie bedingt machen möchten.

Beispielsweise können Sie die folgende bedingte Anweisung verwenden, um eine Aktion oder ein Dialogfeld nur auszuführen, wenn „test.msp“ angewendet wird.

PATCH AND PATCHFORTEST UND PATCH >< PATCHFORTEST

Hinweis

Da die PATCH-Eigenschaft mehrere Patches enthalten kann, verwenden Sie den Teilzeichenfolgenoperator „><“, um zu testen, ob ein bestimmter Patch vorhanden ist, und nicht den Gleichheitsoperator „=“. Weitere Informationen zu bedingten Anweisungen finden Sie im Abschnitt Syntax für bedingte Anweisungen.

 

Das Installationsprogramm legt beide Eigenschaften fest, wenn Sie eine Liste von Patches anwenden, die „test.msp“ enthält. Beispielsweise können Sie die Befehlszeilenoption /p verwenden, um eine Liste mit zwei Patches anzuwenden.

msiexec /qb /p \\scratch\scratch\XYZ\Patches\test.msp;\\scratch\scratch\XYZ\bar.msp

Das Installationsprogramm legt die Eigenschaften PATCH und PATCHFORTEST wie folgt fest.

PATCH=\\\\scratch\\scratch\\XYZ\\Patches\\test.msp;\\\\scratch\\scratch\\XYZ\\bar.msp PATCHFORTEST=\\\\scratch\\scratch\\XYZ\\Patches\\test.msp

In diesem Fall ist die Bedingung TRUE, und die obige bedingte Aktion oder das Dialogfeld kann für jeden installierten Patch, „test.msp“ und „bar.msp“, ausgeführt werden.

Wenn „test.msp“ nicht angewendet wird, schließt das Installationsprogramm „test.msp“ nicht in die PATCH-Eigenschaft ein und legt PATCHFORTEST nicht fest. In diesem Fall ist die obige Bedingung FALSE, und die bedingte Aktion oder das Dialogfeld wird nicht ausgeführt.

Anforderungen

Anforderung Wert
Version
Windows Installer 5.0 unter Windows Server 2012, Windows 8, Windows Server 2008 R2 oder Windows 7. Windows Installer 4.0 oder Windows Installer 4.5 unter Windows Server 2008 oder Windows Vista. Windows Installer unter Windows Server 2003 oder Windows XP. Informationen zum mindestens erforderlichen Windows Service Pack für eine Windows Installer-Version finden Sie unter Windows Installer – Laufzeitanforderungen.

Siehe auch

Eigenschaften

Syntax für bedingte Anweisungen

Beispiele für die Syntax für bedingte Anweisungen