MsiGetProductPropertyA, fonction (msi.h)

La fonction msiGetProductProperty récupère les propriétés du produit. Ces propriétés se trouvent dans la base de données de produit.

Syntaxe

UINT MsiGetProductPropertyA(
  [in]      MSIHANDLE hProduct,
  [in]      LPCSTR    szProperty,
  [out]     LPSTR     lpValueBuf,
  [in, out] LPDWORD   pcchValueBuf
);

Paramètres

[in] hProduct

Handle vers le produit obtenu à partir de MsiOpenProduct.

[in] szProperty

Spécifie la propriété à récupérer. Ceci respecte la casse.

[out] lpValueBuf

Pointeur vers une mémoire tampon qui reçoit la valeur de la propriété. La valeur est tronquée et terminée par null si lpValueBuf est trop petite. Ce paramètre peut être null.

[in, out] pcchValueBuf

Pointeur vers une variable qui spécifie la taille, en caractères, de la mémoire tampon pointée par le paramètre lpValueBuf. Lors de l’entrée, il s’agit de la taille complète de la mémoire tampon, y compris un espace pour un caractère null de fin. Si la mémoire tampon passée est trop petite, le nombre retourné n’inclut pas le caractère null de fin.

Si lpValueBuf a la valeur Null, pcchValueBuf peut être null.

Valeur de retour

La fonction MsiGetProductProperty retourne les valeurs suivantes.

Valeur Signification
ERROR_INVALID_PARAMETER
Un paramètre non valide a été passé à la fonction.
ERROR_INVALID_HANDLE
Un handle non valide a été passé à la fonction.
ERROR_MORE_DATA
Une mémoire tampon est trop petite pour contenir la valeur de la propriété entière.
ERROR_SUCCESS
La fonction s’est terminée correctement.
 
 

Remarques

Lorsque la fonction msiGetProductProperty retourne, le paramètre pcchValueBuf contient la longueur de la chaîne stockée dans la mémoire tampon. Le nombre retourné n’inclut pas le caractère null de fin. Si la mémoire tampon n’est pas suffisamment grande, MsiGetProductProperty retourne ERROR_MORE_DATA, et MsiGetProductProperty contient la taille de la chaîne, en caractères, sans compter le caractère Null.

Note

L’en-tête msi.h définit MsiGetProductProperty comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
client minimum pris en charge Windows Installer 5.0 sur Windows Server 2012, Windows 8, Windows Server 2008 R2 ou Windows 7. Windows Installer 4.0 ou Windows Installer 4.5 sur Windows Server 2008 ou Windows Vista. Windows Installer sur Windows Server 2003 ou Windows XP. Consultez la configuration requise de Windows Installer Run-Time pour plus d’informations sur le service pack Windows minimal requis par une version de Windows Installer.
plateforme cible Windows
d’en-tête msi.h
bibliothèque Msi.lib
DLL Msi.dll

Voir aussi

fonctions de requête produit