MsiRemovePatchesA-Funktion (msi.h)

Die MsiRemovePatches-Funktion entfernt einen oder mehrere Patches aus einem einzelnen Produkt. Um einen Patch aus mehreren Produkten zu entfernen, muss MsiRemovePatches für jedes Produkt aufgerufen werden.

Syntax

UINT MsiRemovePatchesA(
  [in]           LPCSTR      szPatchList,
  [in]           LPCSTR      szProductCode,
  [in]           INSTALLTYPE eUninstallType,
  [in, optional] LPCSTR      szPropertyList
);

Parameter

[in] szPatchList

Eine NULL-Zeichenfolge, die die Liste der zu entfernenden Patches darstellt. Jeder Patch kann durch die GUID des Patches oder den vollständigen Pfad zum Patchpaket angegeben werden. Die Patches in der Liste werden durch Semikolons getrennt.

[in] szProductCode

Eine Zeichenfolge mit NULL-Termin, bei der es sich um den ProductCode (GUID) des Produkts handelt, aus dem die Patches entfernt werden. Dieser Parameter darf nicht NULL sein.

[in] eUninstallType

Wert, der den Typ der durchzuführenden Patchentfernung angibt. Dieser Parameter muss INSTALLTYPE_SINGLE_INSTANCE sein.

Wert Bedeutung
INSTALLTYPE_SINGLE_INSTANCE
Der Patch wird nur für das von szProduct angegebene Produkt deinstalliert.

[in, optional] szPropertyList

Eine auf NULL endende Zeichenfolge, die über die Befehlszeile festgelegte Eigenschaften angibt. Weitere Informationen finden Sie unter
Informationen zu Eigenschaften und Festlegen öffentlicher Eigenschaftswerte in der Befehlszeile. Dieser Parameter kann NULL sein.

Rückgabewert

Die MsiRemovePatches-Funktion gibt die folgenden Werte zurück.

Wert Bedeutung
ERROR_INVALID_PARAMETER
Ein ungültiger Parameter wurde eingeschlossen.
ERROR_PATCH_PACKAGE_OPEN_FAILED
Das Patchpaket konnte nicht geöffnet werden.
ERROR_SUCCESS
Der Patch wurde erfolgreich entfernt.
ERROR_UNKNOWN_PRODUCT
Das von szProductList angegebene Produkt wird weder pro Computer noch pro Benutzer für den Aufrufer von MsiRemovePatches installiert.
ERROR_PATCH_PACKAGE_OPEN_FAILED
Das Patchpaket konnte nicht geöffnet werden.
ERROR_PATCH_PACKAGE_INVALID
Das Patchpaket ist ungültig.
ERROR_PATCH_PACKAGE_UNSUPPORTED
Das Patchpaket kann nicht von dieser Version des Windows Installer-Diensts verarbeitet werden.
ERROR_PATCH_REMOVAL_UNSUPPORTED
Das Patchpaket kann nicht entfernt werden.
ERROR_UNKNOWN_PATCH
Der Patch wurde nicht auf dieses Produkt angewendet.
ERROR_PATCH_REMOVAL_DISALLOWED
Das Entfernen von Patches wurde von einer Richtlinie untersagt.

Bemerkungen

Unter Deinstallieren von Patches finden Sie ein Beispiel, das veranschaulicht, wie eine Anwendung einen Patch aus allen Produkten entfernen kann, die den Benutzer*innen zur Verfügung stehen.

Hinweis

Der msi.h-Header definiert MsiRemovePatches als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) 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. Informationen zum minimal erforderlichen Windows Service Pack für eine Windows Installer-Version finden Sie unter Windows Installer – Laufzeitanforderungen.
Zielplattform Windows
Kopfzeile msi.h
Bibliothek Msi.lib
DLL Msi.dll

Siehe auch

Informationen zu Eigenschaften

MsiApplyPatch

Installationen mit mehreren Paketen

In Windows Installer 2.0 und früher nicht unterstützt

ProductCode

Entfernen von Patches

Festlegen von Werten für öffentliche Eigenschaften in der Befehlszeile

Deinstallieren von Patches