MsiSourceListForceResolutionA-Funktion (msi.h)

Die MsiSourceListForceResolution-Funktion zwingt das Installationsprogramm, die Quellliste nach einer gültigen Produktquelle zu durchsuchen, wenn das nächste Mal eine Quelle erforderlich ist. Beispielsweise, wenn das Installationsprogramm eine Installation oder Neuinstallation durchführt oder wenn es den Pfad für eine Komponente benötigt, die für die Ausführung aus der Quelle festgelegt ist.

Syntax

UINT MsiSourceListForceResolutionA(
  [in] LPCSTR szProduct,
  [in] LPCSTR szUserName,
  [in] DWORD  dwReserved
);

Parameter

[in] szProduct

Der ProductCode des zu ändernden Produkts.

[in] szUserName

Der Benutzername für eine Installation pro Benutzer. Der Benutzername sollte immer das Format DOMAIN\USERNAME (oder MACHINENAME\USERNAME für einen lokalen Benutzer) aufweisen.

Eine leere Zeichenfolge oder NULL für eine installation pro Computer.

[in] dwReserved

Für die zukünftige Verwendung reserviert. Dieser Wert muss auf 0 festgelegt werden.

Rückgabewert

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

Wert Bedeutung
ERROR_ACCESS_DENIED
Der Aufrufer hat nicht genügend Zugriff, um die Auflösung für das Produkt zu erzwingen.
ERROR_BAD_CONFIGURATION
Die Konfigurationsdaten sind beschädigt.
ERROR_BAD_USER_NAME
Der angegebene Benutzer ist kein gültiger Benutzer.
ERROR_FUNCTION_FAILED
Die Funktion konnte nicht abgeschlossen werden.
ERROR_INSTALL_SERVICE_FAILURE
Auf den Installationsdienst konnte nicht zugegriffen werden.
ERROR_INVALID_PARAMETER
Es wurde ein ungültiger Parameter an die Funktion übergeben.
ERROR_SUCCESS
Die Funktion wurde erfolgreich ausgeführt.
ERROR_UNKNOWN_PRODUCT
Das angegebene Produkt ist unbekannt.

Hinweise

Ein Administrator kann Computerinstallationen, ihre eigenen nicht verwalteten Installationen pro Benutzer und die pro Benutzer verwalteten Installationen für jeden Benutzer ändern. Ein Nicht-Administrator kann nur Computerinstallationen und ihre eigenen (verwalteten oder nicht verwalteten) Installationen pro Benutzer ändern.

Wenn der Benutzername eine leere Zeichenfolge oder NULL ist, wird die Funktion auf der computerspezifischen Installation des Produkts ausgeführt. Wenn das Produkt in diesem Fall nur als Benutzer installiert ist, gibt die Funktion ERROR_UNKNOWN_PRODUCT zurück.

Wenn der Benutzername keine leere Zeichenfolge oder NULL ist, gibt er den Namen des Benutzers an, dessen Produktinstallation geändert wurde. Wenn der Benutzername der aktuelle Benutzername ist, versucht die Funktion zunächst, eine nicht verwaltete Installation des Produkts zu ändern. Wenn keine nicht verwaltete Installation des Produkts gefunden wird, versucht die Funktion, eine verwaltete Installation des Produkts pro Benutzer zu ändern. Wenn keine verwalteten oder nicht verwalteten Installationen pro Benutzer des Produkts gefunden werden können, gibt die Funktion ERROR_UNKNOWN_PRODUCT zurück, auch wenn das Produkt pro Computer installiert ist.

Diese Funktion kann eine nicht verwaltete Installation für keinen Benutzer außer dem aktuellen Benutzer ändern. Wenn der Benutzername keine leere Zeichenfolge oder NULL, aber nicht der aktuelle Benutzer ist, sucht die Funktion nur nach einer verwalteten Installation des Produkts pro Benutzer für den angegebenen Benutzer. Wenn das Produkt nicht als benutzerseitig verwaltet für den angegebenen Benutzer installiert ist, gibt die Funktion ERROR_UNKNOWN_PRODUCT zurück, auch wenn das Produkt pro Computer installiert ist.

Hinweis

Der msi.h-Header definiert MsiSourceListForceResolution 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 nicht codierungsneutralem Code 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. Windows Installer unter Windows Server 2003 oder Windows XP. Informationen zum mindestens 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

Weitere Informationen

Installationskontext

LookupAccountName

MsiGetComponentPath

Quellenresilienz