Funzione MsiRemovePatchesW (msi.h)

La funzione MsiRemovePatches rimuove una o più patch da un singolo prodotto. Per rimuovere una patch da più prodotti, è necessario chiamare MsiRemovePatches per ogni prodotto.

Sintassi

UINT MsiRemovePatchesW(
  [in]           LPCWSTR     szPatchList,
  [in]           LPCWSTR     szProductCode,
  [in]           INSTALLTYPE eUninstallType,
  [in, optional] LPCWSTR     szPropertyList
);

Parametri

[in] szPatchList

Stringa con terminazione Null che rappresenta l'elenco di patch da rimuovere. Ogni patch può essere specificata dal GUID della patch o dal percorso completo del pacchetto patch. Le patch nell'elenco sono delimitate da punto e virgola.

[in] szProductCode

Stringa con terminazione Null che corrisponde al ProductCode (GUID) del prodotto da cui vengono rimosse le patch. Questo parametro non può essere NULL.

[in] eUninstallType

Valore che indica il tipo di rimozione delle patch da eseguire. Questo parametro deve essere INSTALLTYPE_SINGLE_INSTANCE.

Valore Significato
INSTALLTYPE_SINGLE_INSTANCE
La patch viene disinstallata solo per il prodotto specificato da szProduct.

[in, optional] szPropertyList

Stringa con terminazione Null che specifica le impostazioni delle proprietà della riga di comando. Per altre informazioni, vedere
Informazioni sulle proprietà e sull'impostazione dei valori delle proprietà pubbliche nella riga di comando. Questo parametro può essere NULL.

Valore restituito

La funzione MsiRemovePatches restituisce i valori seguenti.

Valore Significato
ERROR_INVALID_PARAMETER
È stato incluso un parametro non valido.
ERROR_PATCH_PACKAGE_OPEN_FAILED
Impossibile aprire il pacchetto patch.
ERROR_SUCCESS
La patch è stata rimossa correttamente.
ERROR_UNKNOWN_PRODUCT
Il prodotto specificato da szProductList non è installato per computer o per utente per il chiamante di MsiRemovePatches.
ERROR_PATCH_PACKAGE_OPEN_FAILED
Impossibile aprire il pacchetto patch.
ERROR_PATCH_PACKAGE_INVALID
Il pacchetto patch non è valido.
ERROR_PATCH_PACKAGE_UNSUPPORTED
Il pacchetto patch non può essere elaborato da questa versione del servizio Windows Installer.
ERROR_PATCH_REMOVAL_UNSUPPORTED
Il pacchetto patch non è rimovibile.
ERROR_UNKNOWN_PATCH
La patch non è stata applicata a questo prodotto.
ERROR_PATCH_REMOVAL_DISALLOWED
Rimozione delle patch non consentita dai criteri.

Commenti

Vedere Disinstallazione di patch per un esempio che illustra come un'applicazione può rimuovere una patch da tutti i prodotti disponibili per l'utente.

Nota

L'intestazione msi.h definisce MsiRemovePatches come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

Requisito Valore
Client minimo supportato Windows Installer 5.0 in Windows Server 2012, Windows 8, Windows Server 2008 R2 o Windows 7. Windows Installer 4.0 o Windows Installer 4.5 in Windows Server 2008 o Windows Vista. Per informazioni sul Service Pack minimo di Windows richiesto da una versione di Windows Installer, vedere Windows Installer Run-Time Requirements .See the Windows Installer requirements for information about the minimum Windows Service Pack that is required by a Windows Installer version.
Piattaforma di destinazione Windows
Intestazione msi.h
Libreria Msi.lib
DLL Msi.dll

Vedi anche

Informazioni sulle proprietà

MsiApplyPatch

Installazioni di più pacchetti

Non supportato in Windows Installer 2.0 e versioni precedenti

ProductCode

Rimozione di patch

Impostazione dei valori delle proprietà pubbliche nella riga di comando

Disinstallazione di patch