Share via


MsiGetProductPropertyW-Funktion (msi.h)

Die MsiGetProductProperty-Funktion ruft Produkteigenschaften ab. Diese Eigenschaften befinden sich in der Produktdatenbank.

Syntax

UINT MsiGetProductPropertyW(
  [in]      MSIHANDLE hProduct,
  [in]      LPCWSTR   szProperty,
  [out]     LPWSTR    lpValueBuf,
  [in, out] LPDWORD   pcchValueBuf
);

Parameter

[in] hProduct

Handle mit dem Produkt, das von MsiOpenProduct abgerufen wurde.

[in] szProperty

Gibt die abzurufende Eigenschaft an. Hierbei muss die Groß-/Kleinschreibung beachtet werden.

[out] lpValueBuf

Zeiger auf einen Puffer, der den Eigenschaftswert empfängt. Der Wert wird abgeschnitten und null beendet, wenn lpValueBuf zu klein ist. Dieser Parameter kann NULL sein.

[in, out] pcchValueBuf

Zeiger auf eine Variable, die die Größe des Puffers in Zeichen angibt, auf die der lpValueBuf-Parameter verweist. Bei der Eingabe ist dies die vollständige Größe des Puffers, einschließlich eines Leerzeichens für ein beendendes NULL-Zeichen. Wenn der übergebene Puffer zu klein ist, enthält die zurückgegebene Anzahl nicht das beendende NULL-Zeichen.

Wenn lpValueBuf NULL ist, kann pcchValueBuf NULL sein.

Rückgabewert

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

Wert Bedeutung
ERROR_INVALID_PARAMETER
Es wurde ein ungültiger Parameter an die Funktion übergeben.
ERROR_INVALID_HANDLE
Ein ungültiges Handle wurde an die Funktion übergeben.
ERROR_MORE_DATA
Ein Puffer ist zu klein, um den gesamten Eigenschaftswert zu speichern.
ERROR_SUCCESS
Die Funktion wurde erfolgreich abgeschlossen.
 
 

Hinweise

Wenn die MsiGetProductProperty-Funktion zurückgibt, enthält der pcchValueBuf-Parameter die Länge der im Puffer gespeicherten Zeichenfolge. Die zurückgegebene Anzahl enthält nicht das beendende NULL-Zeichen. Wenn der Puffer nicht groß genug ist, gibt MsiGetProductProperty ERROR_MORE_DATA zurück, und MsiGetProductProperty enthält die Größe der Zeichenfolge in Zeichen, ohne das NULL-Zeichen zu zählen.

Hinweis

Der msi.h-Header definiert MsiGetProductProperty 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

Produktabfragefunktionen