Freigeben über


MsiSourceListForceResolutionExA-Funktion (msi.h)

Die MsiSourceListForceResolutionEx--Funktion entfernt die Registrierung der Eigenschaft namens "LastUsedSource". Diese Funktion wirkt sich nicht auf die registrierte Quellliste aus. Wenn das Installationsprogramm die Quelle zum erneuten Installieren eines Produkts oder Patches benötigt, wird zuerst die als "LastUsedSource" registrierte Quelle versucht. Wenn die Registrierung fehlschlägt oder diese Registrierung fehlt, durchsucht das Installationsprogramm die anderen registrierten Quellen, bis er eine gültige Quelle findet oder bis die Liste der Quellen erschöpft ist. Durch das Löschen der Registrierung "LastUsedSource" wird das Installationsprogramm gezwungen, eine Quellauflösung für die registrierten Quellen auszuführen, wenn die Quelle das nächste Mal erforderlich ist.

Syntax

UINT MsiSourceListForceResolutionExA(
  [in]           LPCSTR            szProductCodeOrPatchCode,
  [in, optional] LPCSTR            szUserSid,
  [in]           MSIINSTALLCONTEXT dwContext,
  [in]           DWORD             dwOptions
);

Parameter

[in] szProductCodeOrPatchCode

Die ProductCode oder Patch-GUID des Produkts oder Patches. Verwenden Sie eine mit Null beendete Zeichenfolge. Wenn die Zeichenfolge länger als 39 Zeichen ist, schlägt die Funktion fehl und gibt ERROR_INVALID_PARAMETER zurück. Dieser Parameter kann nicht NULL-werden.

[in, optional] szUserSid

Dieser Parameter kann eine Zeichenfolgen-SID sein, die das Benutzerkonto angibt, das das Produkt oder den Patch enthält. Die SID wird nicht überprüft oder aufgelöst. Eine falsche SID kann ERROR_UNKNOWN_PRODUCT oder ERROR_UNKNOWN_PATCH zurückgeben. Beim Verweisen auf einen Computerkontext muss szUserSID-NULL- sein und dwContext- MSIINSTALLCONTEXT_MACHINE sein. Die Computer-SID ("S-1-5-18") gibt ERROR_INVALID PARAMETER zurück. Beim Verweisen auf das aktuelle Benutzerkonto kann szUserSID-NULL- sein und dwContext- MSIINSTALLCONTEXT_USERMANAGED oder MSIINSTALLCONTEXT_USERUNMANAGED werden.

[in] dwContext

Dieser Parameter gibt den Kontext der Produkt- oder Patchinstanz an. Dieser Parameter kann einen der folgenden Werte enthalten.

Typ des Kontexts Bedeutung
MSIINSTALLCONTEXT_USERMANAGED
Die Produkt- oder Patchinstanz ist im vom Benutzer verwalteten Kontext vorhanden.
MSIINSTALLCONTEXT_USERUNMANAGED
Die Produkt- oder Patchinstanz ist im nicht verwalteten Kontext pro Benutzer vorhanden.
MSIINSTALLCONTEXT_MACHINE
Die Produkt- oder Patchinstanz ist im Kontext pro Computer vorhanden.

[in] dwOptions

Der wert dwOptions bestimmt die Interpretation des szProductCodeOrPatchCode Werts.

Flagge Bedeutung
MSICODE_PRODUCT
szProductCodeOrPatchCode ist ein Produktcode.
MSICODE_PATCH
szProductCodeOrPatchCode ist ein Patchcode.

Rückgabewert

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

Wert Bedeutung
ERROR_ACCESS_DENIED
Der Benutzer hat nicht die Möglichkeit, die angegebene Quellliste zu ändern. Gibt nicht an, ob das Produkt oder patch gefunden wurde.
ERROR_BAD_CONFIGURATION
Die Konfigurationsdaten sind beschädigt.
ERROR_INSTALL_SERVICE_FAILURE
Zugriff auf den Windows Installer-Dienst nicht
ERROR_INVALID_PARAMETER
An die Funktion wurde ein ungültiger Parameter übergeben.
ERROR_SUCCESS
Die Registrierung "LastUsedSource" wurde gelöscht.
ERROR_UNKNOWN_PATCH
Der Patch wurde nicht gefunden.
ERROR_UNKNOWN_PRODUCT
Das angegebene Produkt oder Patch wurde nicht gefunden.
ERROR_FUNCTION_FAILED
Unerwarteter interner Fehler.

Bemerkungen

Administratoren können die Installation eines Produkts oder einer Patchinstanz ändern, die im Computerkontext oder im eigenen Benutzerkontext vorhanden ist (verwaltet oder nicht verwaltet).) Sie können die Installation eines Produkts oder einer Patchinstanz ändern, die im vom Benutzer verwalteten Kontext vorhanden ist. Administratoren können die Installation eines Produkts oder einer Patchinstanz eines anderen Benutzers nicht ändern, die im kontextbasierten Kontext eines anderen Benutzers vorhanden ist.

Nicht-Administratoren können die Installation eines Produkts oder einer Patchinstanz nicht ändern, die im Benutzerkontext eines anderen Benutzers vorhanden ist (verwaltet oder nicht verwaltet.) Sie können die Installation eines Produkts oder einer Patchinstanz ändern, die unter ihrem eigenen benutzerspezifischen nicht verwalteten Kontext vorhanden ist. Sie können die Installation eines Produkts oder einer Patchinstanz im Computerkontext oder in ihrem eigenen vom Benutzer verwalteten Kontext nur ändern, wenn sie für die Suche nach einer Produkt- oder Patchquelle aktiviert sind. Benutzer können nach Quellen suchen, indem Sie eine Richtlinie festlegen, weitere Informationen finden Sie unter DisableBrowse, AllowLockdownBrowseund AlwaysInstallElevated Richtlinien.

Anmerkung

Der msi.h-Header definiert MsiSourceListForceResolutionEx 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
mindestens unterstützte 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. Windows Installer 3.0 oder höher unter Windows Server 2003 oder Windows XP. Informationen zum mindestens von einer Windows Installer-Version erforderlichen Windows-Service Pack finden Sie unter den Windows Installer-Run-Time Anforderungen.
Zielplattform- Fenster
Header- msi.h
Library Msi.lib
DLL- Msi.dll

Siehe auch

in Windows Installer 2.0 und früheren nicht unterstützt

ProductCode-

Quellresilienz-