MsiQueryComponentStateA-Funktion (msi.h)
Die MsiQueryComponentState Funktion gibt den installierten Zustand für eine Komponente zurück. Diese Funktion kann eine Komponente einer Instanz eines Produkts abfragen, das unter anderen Benutzerkonten als dem aktuellen Benutzer installiert ist, vorausgesetzt, das Produkt wird nicht unter dem nicht verwalteten Kontext pro Benutzer für ein benutzerkontospezifisches Benutzerkonto als den aktuellen Benutzer angekündigt. Der Aufrufvorgang muss über Administratorrechte verfügen, um Informationen für ein Produkt abzurufen, das für einen anderen Benutzer als den aktuellen Benutzer installiert ist.
Syntax
UINT MsiQueryComponentStateA(
[in] LPCSTR szProductCode,
[in] LPCSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] LPCSTR szComponentCode,
[out] INSTALLSTATE *pdwState
);
Parameter
[in] szProductCode
Gibt die ProductCode- GUID für das Produkt an, das die Komponente enthält.
[in] szUserSid
Gibt die Sicherheits-ID (SID) des Kontos an, unter dem die Instanz des abgefragten Produkts vorhanden ist. Wenn dwContext- nicht MSIINSTALLCONTEXT_MACHINE ist, gibt NULL den aktuellen Benutzer an.
[in] dwContext
Der Installationskontext der produktinstanz, die abgefragt wird.
[in] szComponentCode
Gibt die abgefragte Komponente an. Komponentencode-GUID der Komponente, wie in der Spalte "ComponentID" der Tabelle Component zu finden.
[out] pdwState
Installationsstatus der Komponente für die angegebene Produktinstanz. Dieser Parameter kann einen der folgenden oder NULL-Werte zurückgeben.
Wert | Bedeutung |
---|---|
|
Die Komponente wird lokal installiert. |
|
Die Komponente wird installiert, um sie aus der Quelle auszuführen. |
Rückgabewert
Die MsiQueryComponentState Funktion gibt die folgenden Werte zurück.
Wert | Bedeutung |
---|---|
|
Der Aufrufvorgang muss über Administratorrechte verfügen, um Informationen für ein Produkt abzurufen, das für einen anderen Benutzer als den aktuellen Benutzer installiert ist. |
|
Die Konfigurationsdaten sind beschädigt. |
|
An die Funktion wurde ein ungültiger Parameter übergeben. |
|
Die Funktion wurde erfolgreich abgeschlossen. |
|
Die Komponenten-ID identifiziert keine bekannte Komponente. |
|
Der Produktcode identifiziert kein bekanntes Produkt. |
|
Fehler, die keinem Windows-Fehlercode zugeordnet werden können. |
|
Puffer zu klein, um die Benutzer-SID abzurufen. |
Weitere Informationen finden Sie unter Angezeigte Fehlermeldungen.
Bemerkungen
Anmerkung
Der msi.h-Header definiert MsiQueryComponentState 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. 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
Installationsprogrammauswahlfunktionen
in Windows Installer 2.0 und früheren nicht unterstützt