Condividi tramite


Applicazione di patch alle installazioni iniziali

È possibile applicare una patch di Windows Installer (MSP) quando si installa un'applicazione per la prima volta usando la proprietà PATCH.

Per applicare una patch la prima volta che viene installata l'applicazione, è necessario impostare la proprietà PATCH nella riga di comando. Specificare il percorso completo della patch nella riga di comando come coppia di proprietà "PATCH={path to patch}".

Si noti che la specifica della proprietà PATCH nella riga di comando sostituisce i controlli di applicabilità delle patch eseguiti quando si usa MsiApplyPatch o l'opzione della riga di comando /p.

Se viene applicata una patch usando MsiApplyPatch o l'opzione della riga di comando /p, il programma di installazione confronta le applicazioni attualmente installate nel computer con l'elenco dei codici prodotto idonei a ricevere la patch nella proprietà Riepilogo modelli.

Quando si imposta la proprietà PATCH nella riga di comando per l'installazione alla prima installazione, le applicazioni idonee a ricevere la patch sono determinate dalle condizioni di convalida delle trasformazioni incorporate nel pacchetto patch. Il metodo consigliato per generare un pacchetto patch consiste nell'usare uno strumento di creazione di patch, ad esempio Msimsp.exe e PATCHWIZ.DLL. Le condizioni di convalida sulle trasformazioni nella patch provengono dalla colonna ProductValidateFlags nella tabella TargetImages del file Patch Creation Properties (con estensione pcp).

La patch può essere applicata la prima volta che l'applicazione viene installata da una riga di comando, da un'altra applicazione o da un altro script.

Di seguito viene illustrata la prima applicazione di patch dalla riga di comando.

msiexec /I package.msi PATCH="c:\directory\patch.msp"

Di seguito viene illustrata l'applicazione di patch per la prima volta da un'altra applicazione.

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

Di seguito viene illustrata la prima applicazione di patch dallo script.

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

**Windows Installer 3.0 e versioni successive: **

A partire da Windows Installer versione 3.0, è possibile applicare più patch quando si installa un'applicazione per la prima volta. Impostare la proprietà PATCH su un elenco delimitato da punto e virgola dei percorsi completi delle patch. Di seguito viene illustrata la prima patch di più patch dalla riga di comando.

msiexec /I package.msi PATCH="c:\directory\patch.msp; c:\directory\patch2.msp; c:\directory\patch3.msp"