GetProductInfo, fonction (sysinfoapi.h)
Récupère le type de produit pour le système d’exploitation sur l’ordinateur local et mappe le type aux types de produits pris en charge par le système d’exploitation spécifié.
Pour récupérer des informations sur le type de produit sur les versions de Windows antérieures aux systèmes d’exploitation minimum pris en charge spécifiés dans la section Configuration requise, utilisez la fonction GetVersionEx . Vous pouvez également utiliser la propriété OperatingSystemSKU de la classe WMI Win32_OperatingSystem .
Syntaxe
BOOL GetProductInfo(
[in] DWORD dwOSMajorVersion,
[in] DWORD dwOSMinorVersion,
[in] DWORD dwSpMajorVersion,
[in] DWORD dwSpMinorVersion,
[out] PDWORD pdwReturnedProductType
);
Paramètres
[in] dwOSMajorVersion
Numéro de version principal du système d’exploitation. La valeur minimale est 6.
La combinaison des paramètres dwOSMajorVersion, dwOSMinorVersion, dwSpMajorVersion et dwSpMinorVersion décrit la version maximale du système d’exploitation cible pour l’application. Par exemple, Windows Vista et Windows Server 2008 sont version 6.0.0.0 et Windows 7 et Windows Server 2008 R2 sont version 6.1.0.0. Toutes les versions basées sur Windows 10 seront répertoriées en tant que version 6.3.
[in] dwOSMinorVersion
Numéro de version secondaire du système d’exploitation. La valeur minimale est 0.
[in] dwSpMajorVersion
Numéro de version principal du service pack du système d’exploitation. La valeur minimale est 0.
[in] dwSpMinorVersion
Numéro de version mineure du Service Pack du système d’exploitation. La valeur minimale est 0.
[out] pdwReturnedProductType
Type de produit. Ce paramètre ne peut pas avoir la valeur NULL. Si le système d’exploitation spécifié est inférieur au système d’exploitation actuel, ces informations sont mappées aux types pris en charge par le système d’exploitation spécifié. Si le système d’exploitation spécifié est supérieur au système d’exploitation le plus élevé pris en charge, ces informations sont mappées aux types pris en charge par le système d’exploitation actuel.
Ce paramètre peut être l’une des valeurs suivantes (certains produits ci-dessous peuvent ne pas être pris en charge).
Valeur | Signification |
---|---|
|
Entreprises |
|
Entreprise N |
|
HPC Edition |
|
Serveur Hyper Core V |
|
Windows 10 Famille |
|
Windows 10 Famille Chine |
|
Windows 10 Famille N |
|
Windows 10 Famille Unilingue |
|
Centre de données de serveur (installation d’évaluation) |
|
Centre de données de serveur, canal Semi-Annual (installation principale) |
|
Server Standard, Semi-Annual Channel (installation principale) |
|
Centre de données de serveur (installation complète. Pour les installations Server Core de Windows Server 2012 et versions ultérieures, utilisez la méthode Déterminer si Server Core est en cours d’exécution.) |
|
Server Datacenter (installation principale, Windows Server 2008 R2 et versions antérieures) |
|
Centre de données de serveur sans Hyper-V (installation principale) |
|
Centre de données de serveur sans Hyper-V (installation complète) |
|
Windows 10 Éducation |
|
Windows 10 Éducation N |
|
Windows 10 Entreprise |
|
Windows 10 Entreprise E |
|
Version d’évaluation de Windows 10 Entreprise |
|
Windows 10 Entreprise N |
|
Version d'évaluation de Windows 10 Entreprise N |
|
Windows 10 Enterprise 2015 LTSB |
|
Version d'évaluation de Windows 10 Entreprise 2015 LTSB |
|
Windows 10 Enterprise 2015 LTSB N |
|
Version d'évaluation de Windows 10 Entreprise 2015 LTSB N |
|
Server Enterprise (installation complète) |
|
Server Enterprise (installation principale) |
|
Server Enterprise sans Hyper-V (installation principale) |
|
Server Enterprise pour systèmes Itanium |
|
Server Enterprise sans Hyper-V (installation complète) |
|
Solution Windows Essential Server Supplémentaire |
|
SVC supplémentaire de la solution Windows Essential Server |
|
Gestion des solutions Windows Essential Server |
|
Gestion des solutions Windows Essential Server SVC |
|
Édition Familiale Basique |
|
Non prise en charge |
|
Home Basic N |
|
Édition Familiale Premium |
|
Non prise en charge |
|
Accueil Premium N |
|
Windows Home Server 2011 |
|
Windows Storage Server 2008 R2 Essentials |
|
Microsoft Hyper-V Server |
|
Windows IoT Entreprise |
|
Windows IoT Entreprise LTSC |
|
Windows 10 IoT Standard |
|
Windows 10 IoT Standard Commercial |
|
Serveur d’administration Windows Essential Business Server |
|
Serveur de messagerie Windows Essential Business Server |
|
Serveur de sécurité Windows Essential Business Server |
|
Windows 10 Mobile |
|
Windows 10 Mobile Entreprise |
|
Windows MultiPoint Server Premium (installation complète) |
|
Windows MultiPoint Server Standard (installation complète) |
|
Windows 10 Collaboration |
|
Windows 10 Professionnel Éducation |
|
Windows 10 Professionnel pour les Stations de travail |
|
Windows 10 Professionnel pour les Stations de travail N |
|
Windows 10 Professionnel |
|
Non prise en charge |
|
Windows 10 Professionnel N |
|
Professionnel avec Media Center |
|
Windows Small Business Server 2011 Essentials |
|
Serveur pour solutions SB EM |
|
Serveur pour solutions SB |
|
Serveur pour solutions SB EM |
|
Windows Server 2008 pour les solutions Windows Essential Server |
|
Windows Server 2008 sans Hyper-V pour les solutions Windows Essential Server |
|
Server Foundation |
|
Windows 10 Entreprise pour Virtual Desktops |
|
Windows Small Business Server |
|
Small Business Server Premium |
|
Small Business Server Premium (installation principale) |
|
Windows MultiPoint Server |
|
Server Standard (installation d’évaluation) |
|
Server Standard (installation complète. Pour les installations Server Core de Windows Server 2012 et versions ultérieures, utilisez la méthode Déterminer si Server Core est en cours d’exécution.) |
|
Server Standard (installation principale, Windows Server 2008 R2 et versions antérieures) |
|
Serveur Standard sans Hyper-V (installation principale) |
|
Serveur Standard sans Hyper-V |
|
Solutions serveur Premium |
|
Server Solutions Premium (installation principale) |
|
Starter |
|
Non prise en charge |
|
Starter N |
|
Storage Server Enterprise |
|
Storage Server Enterprise (installation principale) |
|
Serveur de stockage Express |
|
Storage Server Express (installation principale) |
|
Serveur de stockage Standard (installation d’évaluation) |
|
Serveur de stockage Standard |
|
Storage Server Standard (installation principale) |
|
Groupe de travail du serveur de stockage (installation d’évaluation) |
|
Groupe de travail du serveur de stockage |
|
Groupe de travail du serveur de stockage (installation principale) |
|
Édition intégrale |
|
Non prise en charge |
|
Ultimate N |
|
Un produit inconnu |
|
Serveur web (installation complète) |
|
Serveur web (installation principale) |
Valeur retournée
Si la fonction réussit, la valeur de retour est une valeur différente de zéro.
Si la fonction échoue, la valeur de retour est égale à zéro. Cette fonction échoue si l’un des paramètres d’entrée n’est pas valide.
Remarques
Pour détecter si un rôle ou une fonctionnalité serveur est installé, utilisez le fournisseur WMI de fonctionnalité serveur.
Les versions ultérieures de Windows mapperont les types de produits qu’il prend en charge à l’ensemble des types de produits pris en charge par chaque version précédente prise en charge de Windows, en revenant à la version 6.0.0.0. Par conséquent, une application qui effectue un test d’égalité pour l’une de ces valeurs continuera à fonctionner sur les versions ultérieures, même lorsque de nouveaux types de produits sont ajoutés.
PRODUCT_*_SERVER_CORE valeurs ne sont pas retournées dans Windows Server 2012 et versions ultérieures. Par exemple, l’édition du serveur de base, Server Datacenter, est utilisée pour générer les deux options d’installation différentes : « serveur complet » et « serveur principal ». Avec Windows Server 2012, GetProductInfo retourne PRODUCT_DATACENTER quelle que soit l’option utilisée lors de l’installation du produit. Comme indiqué ci-dessus, pour les installations Server Core de Windows Server 2012 et versions ultérieures, utilisez la méthode Déterminer si Server Core est en cours d’exécution.
Le tableau suivant indique les types de produits qui ont été introduits dans la version 6.1.0.0, ainsi que leur correspondance si GetProductInfo est appelé avec la version 6.0.0.0 sur un système 6.1.0.0.
Nouveauté de la version 6.1.0.0 | Valeur retournée avec 6.0.0.0 |
---|---|
PRODUCT_PROFESSIONAL | PRODUCT_BUSINESS |
PRODUCT_PROFESSIONAL_N | PRODUCT_BUSINESS_N |
PRODUCT_STARTER_N | PRODUCT_STARTER |
Pour compiler une application qui utilise cette fonction, définissez _WIN32_WINNT comme 0x0600 ou version ultérieure. Pour plus d’informations, consultez Utilisation des en-têtes Windows.
Exemples
Pour obtenir un exemple, consultez Obtention de la version système.
Configuration requise
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | sysinfoapi.h (inclure Windows.h) |
Bibliothèque | Kernel32.lib |
DLL | Kernel32.dll |