Patchen von Erstinstallationen

Beim erstmaligen Installieren einer Anwendung kann ein Windows Installer-Patch (MSP) mithilfe der PATCH-Eigenschaft angewendet werden.

Zum Anwenden eines Patches bei der Erstinstallation der Anwendung muss die PATCH-Eigenschaft in der Befehlszeile festgelegt werden. Geben Sie den vollständigen Pfad zum Patch in der Befehlszeile als Eigenschafts-Wert-Paar „PATCH={Pfad zum Patch}“ an.

Beachten Sie, dass die Angabe der PATCH-Eigenschaft in der Befehlszeile die Patchanwendbarkeitsprüfungen außer Kraft setzt, die bei Verwendung von MsiApplyPatch oder der Befehlszeilenoption „/p“ durchgeführt werden.

Wenn ein Patch mithilfe von MsiApplyPatch oder der Befehlszeilenoption „/p“ angewendet wird, vergleicht der Installer die aktuell auf dem Computer installierten Anwendungen mit der Liste der Produktcodes aus der Template Summary-Eigenschaft, die den Patch erhalten können.

Wenn Sie die PATCH-Eigenschaft in der Befehlszeile für die Installation bei der Erstinstallation festlegen, werden die Anwendungen, die den Patch erhalten können, durch Validierungsbedingungen für die in das Patchpaket eingebetteten Transformationen bestimmt. Zum Generieren eines Patchpakets wird die Verwendung von Patcherstellungstools wie Msimsp.exe und PATCHWIZ.DLL empfohlen. Die Validierungsbedingungen für Transformationen im Patch stammen aus der Spalte „ProductValidateFlags“ in der Tabelle TargetImages der PCP-Datei.

Der Patch kann bei der Erstinstallation der Anwendung über eine Befehlszeile, eine andere Anwendung oder ein Skript angewendet werden.

Im Folgenden wird das erstmalige Patchen über die Befehlszeile veranschaulicht.

msiexec /Ipackage.msiPATCH=„c:\directory\patch.msp“

Im Folgenden wird das erstmalige Patchen über eine andere Anwendung veranschaulicht.

UINT uiStat = MsiInstallProduct(_T("package.msi"), _T("PATCH=c:\directory\patch.msp"));

Im Folgenden wird das erstmalige Patchen über ein Skript veranschaulicht.

Dim Installer as Object
Set Installer = CreateObject("WindowsInstaller.Installer")
Installer.InstallProduct "package.msi", "PATCH=c:\directory\patch.msp"

**Windows Installer 3.0 und höher: **

Ab Version 3.0 von Windows Installer können bei der Erstinstallation einer Anwendung mehrere Patches angewendet werden. Legen Sie die PATCH-Eigenschaft auf eine durch Semikolon getrennte Liste der vollständigen Pfade der Patches fest. Im Folgenden wird das erstmalige Patchen mit mehreren Patches über die Befehlszeile veranschaulicht.

msiexec /Ipackage.msiPATCH=„c:\directory\patch.msp;c:\directory\patch2.msp;c:\directory\patch3.msp“