Freigeben über


MsiSourceListForceResolutionA-Funktion (msi.h)

Die MsiSourceListForceResolution-funktion erzwingt das Installationsprogramm, die Quellliste nach einer gültigen Produktquelle zu durchsuchen, wenn das nächste Mal eine Quelle erforderlich ist. Wenn das Installationsprogramm beispielsweise eine Installation oder Neuinstallation durchführt oder wenn der Pfad für eine Komponente erforderlich ist, die aus der Quelle ausgeführt werden soll.

Syntax

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

Parameter

[in] szProduct

Die ProductCode- des zu ändernden Produkts.

[in] szUserName

Der Benutzername für eine Benutzerinstallation. Der Benutzername sollte immer im Format "DOMAIN\USERNAME" (oder MACHINENAME\USERNAME für einen lokalen Benutzer) vorliegen.

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

[in] dwReserved

Reserviert für die zukünftige Verwendung. 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 verfügt nicht über ausreichenden 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
An die Funktion wurde ein ungültiger Parameter übergeben.
ERROR_SUCCESS
Die Funktion war erfolgreich.
ERROR_UNKNOWN_PRODUCT
Das angegebene Produkt ist unbekannt.

Bemerkungen

Ein Administrator kann installationen pro Computer, eigene nicht verwaltete Installationen pro Benutzer und die benutzerspezifischen verwalteten Installationen für jeden Benutzer ändern. Ein Nicht-Administrator kann nur installationen pro Computer und seine eigenen (verwalteten oder nicht verwalteten) Installationen pro Benutzer ändern.

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

Wenn der Benutzername keine leere Zeichenfolge oder NULL-ist, gibt er den Namen des Benutzers an, dessen Produktinstallation geändert wird. 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 werden kann, versucht die Funktion dann, 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 keine nicht verwaltete Installation für jeden Benutzer außer dem aktuellen Benutzer ändern. Wenn der Benutzername keine leere Zeichenfolge oder NULL-ist, aber nicht der aktuelle Benutzer ist, sucht die Funktion nur nach einer verwalteten Benutzerinstallation des Produkts für den angegebenen Benutzer. Wenn das Produkt nicht pro Benutzer für den angegebenen Benutzer verwaltet wird, gibt die Funktion ERROR_UNKNOWN_PRODUCT zurück, auch wenn das Produkt pro Computer installiert ist.

Anmerkung

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 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 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

Installationskontext-

LookupAccountName-

MsiGetComponentPath-

Quellresilienz-