MsiEnumRelatedProductsA, fonction (msi.h)
La fonction MsiEnumRelatedProducts énumère les produits avec un code de mise à niveau spécifié. Cette fonction répertorie les produits actuellement installés et publiés qui ont la propriété UpgradeCode spécifiée dans leur table Property.
Syntaxe
UINT MsiEnumRelatedProductsA(
[in] LPCSTR lpUpgradeCode,
[in] DWORD dwReserved,
[in] DWORD iProductIndex,
[out] LPSTR lpProductBuf
);
Paramètres
[in] lpUpgradeCode
Chaîne terminée par null spécifiant le code de mise à niveau des produits associés que le programme d’installation doit énumérer.
[in] dwReserved
Ce paramètre est réservé et doit être 0.
[in] iProductIndex
Index de base zéro dans les produits enregistrés.
[out] lpProductBuf
Mémoire tampon pour recevoir le GUID de code produit. Cette mémoire tampon doit contenir 39 caractères. Les 38 premiers caractères correspondent au GUID et le dernier caractère correspond au caractère null de fin.
Valeur retournée
Valeur | Signification |
---|---|
|
Les données de configuration sont endommagées. |
|
Un paramètre non valide a été transmis à la fonction. |
|
Il n’y a aucun produit à retourner. |
|
Le système ne dispose pas de suffisamment de mémoire pour terminer l’opération. Disponible à partir de Windows Server 2003. |
|
Une valeur a été énumérée. |
Notes
Consultez propriété UpgradeCode .
Pour énumérer les produits actuellement installés et publiés qui ont un code de mise à niveau spécifique, une application doit initialement appeler la fonction MsiEnumRelatedProducts avec le paramètre iProductIndex défini sur zéro. L’application doit ensuite incrémenter le paramètre iProductIndex et appeler MsiEnumRelatedProducts jusqu’à ce que la fonction retourne ERROR_NO_MORE_ITEMS, ce qui signifie qu’il n’y a plus de produits avec le code de mise à niveau spécifié.
Lorsque vous effectuez plusieurs appels à MsiEnumRelatedProducts pour énumérer tous les produits associés, chaque appel doit être effectué à partir du même thread.
Notes
L’en-tête msi.h définit MsiEnumRelatedProducts comme un 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.
Spécifications
Client minimal 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. Pour plus d’informations sur le Service Pack Windows requis par une version de Windows Installer, consultez Configuration requise pour le runtime Windows. |
Plateforme cible | Windows |
En-tête | msi.h |
Bibliothèque | Msi.lib |
DLL | Msi.dll |