Partager via


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
PRODUCT_BUSINESS
0x00000006
Entreprises
PRODUCT_BUSINESS_N
0x00000010
Entreprise N
PRODUCT_CLUSTER_SERVER
0x00000012
HPC Edition
PRODUCT_CLUSTER_SERVER_V
0x00000040
Serveur Hyper Core V
PRODUCT_CORE
0x00000065
Windows 10 Famille
PRODUCT_CORE_COUNTRYSPECIFIC
0x00000063
Windows 10 Famille Chine
PRODUCT_CORE_N
0x00000062
Windows 10 Famille N
PRODUCT_CORE_SINGLELANGUAGE
0x00000064
Windows 10 Famille Unilingue
PRODUCT_DATACENTER_EVALUATION_SERVER
0x00000050
Centre de données de serveur (installation d’évaluation)
PRODUCT_DATACENTER_A_SERVER_CORE
0x00000091
Centre de données de serveur, canal Semi-Annual (installation principale)
PRODUCT_STANDARD_A_SERVER_CORE
0x00000092
Server Standard, Semi-Annual Channel (installation principale)
PRODUCT_DATACENTER_SERVER
0x00000008
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.)
PRODUCT_DATACENTER_SERVER_CORE
0x0000000C
Server Datacenter (installation principale, Windows Server 2008 R2 et versions antérieures)
PRODUCT_DATACENTER_SERVER_CORE_V
0x00000027
Centre de données de serveur sans Hyper-V (installation principale)
PRODUCT_DATACENTER_SERVER_V
0x00000025
Centre de données de serveur sans Hyper-V (installation complète)
PRODUCT_EDUCATION
0x00000079
Windows 10 Éducation
PRODUCT_EDUCATION_N
0x0000007A
Windows 10 Éducation N
PRODUCT_ENTERPRISE
0x00000004
Windows 10 Entreprise
PRODUCT_ENTERPRISE_E
0x00000046
Windows 10 Entreprise E
PRODUCT_ENTERPRISE_EVALUATION
0x00000048
Version d’évaluation de Windows 10 Entreprise
PRODUCT_ENTERPRISE_N
0x0000001B
Windows 10 Entreprise N
PRODUCT_ENTERPRISE_N_EVALUATION
0x00000054
Version d'évaluation de Windows 10 Entreprise N
PRODUCT_ENTERPRISE_S
0x0000007D
Windows 10 Enterprise 2015 LTSB
PRODUCT_ENTERPRISE_S_EVALUATION
0x00000081
Version d'évaluation de Windows 10 Entreprise 2015 LTSB
PRODUCT_ENTERPRISE_S_N
0x0000007E
Windows 10 Enterprise 2015 LTSB N
PRODUCT_ENTERPRISE_S_N_EVALUATION
0x00000082
Version d'évaluation de Windows 10 Entreprise 2015 LTSB N
PRODUCT_ENTERPRISE_SERVER
0x0000000A
Server Enterprise (installation complète)
PRODUCT_ENTERPRISE_SERVER_CORE
0x0000000E
Server Enterprise (installation principale)
PRODUCT_ENTERPRISE_SERVER_CORE_V
0x00000029
Server Enterprise sans Hyper-V (installation principale)
PRODUCT_ENTERPRISE_SERVER_IA64
0x0000000F
Server Enterprise pour systèmes Itanium
PRODUCT_ENTERPRISE_SERVER_V
0x00000026
Server Enterprise sans Hyper-V (installation complète)
PRODUCT_ESSENTIALBUSINESS_SERVER_ADDL
0x0000003C
Solution Windows Essential Server Supplémentaire
PRODUCT_ESSENTIALBUSINESS_SERVER_ADDLSVC
0x0000003E
SVC supplémentaire de la solution Windows Essential Server
PRODUCT_ESSENTIALBUSINESS_SERVER_MGMT
0x0000003B
Gestion des solutions Windows Essential Server
PRODUCT_ESSENTIALBUSINESS_SERVER_MGMTSVC
0x0000003D
Gestion des solutions Windows Essential Server SVC
PRODUCT_HOME_BASIC
0x00000002
Édition Familiale Basique
PRODUCT_HOME_BASIC_E
0x00000043
Non prise en charge
PRODUCT_HOME_BASIC_N
0x00000005
Home Basic N
PRODUCT_HOME_PREMIUM
0x00000003
Édition Familiale Premium
PRODUCT_HOME_PREMIUM_E
0x00000044
Non prise en charge
PRODUCT_HOME_PREMIUM_N
0x0000001A
Accueil Premium N
PRODUCT_HOME_PREMIUM_SERVER
0x00000022
Windows Home Server 2011
PRODUCT_HOME_SERVER
0x00000013
Windows Storage Server 2008 R2 Essentials
PRODUCT_HYPERV
0x0000002A
Microsoft Hyper-V Server
PRODUCT_IOTENTERPRISE
0x000000BC
Windows IoT Entreprise
PRODUCT_IOTENTERPRISE_S
0x000000BF
Windows IoT Entreprise LTSC
PRODUCT_IOTUAP
0x0000007B
Windows 10 IoT Standard
PRODUCT_IOTUAPCOMMERCIAL
0x00000083
Windows 10 IoT Standard Commercial
PRODUCT_MEDIUMBUSINESS_SERVER_MANAGEMENT
0x0000001E
Serveur d’administration Windows Essential Business Server
PRODUCT_MEDIUMBUSINESS_SERVER_MESSAGING
0x00000020
Serveur de messagerie Windows Essential Business Server
PRODUCT_MEDIUMBUSINESS_SERVER_SECURITY
0x0000001F
Serveur de sécurité Windows Essential Business Server
PRODUCT_MOBILE_CORE
0x00000068
Windows 10 Mobile
PRODUCT_MOBILE_ENTERPRISE
0x00000085
Windows 10 Mobile Entreprise
PRODUCT_MULTIPOINT_PREMIUM_SERVER
0x0000004D
Windows MultiPoint Server Premium (installation complète)
PRODUCT_MULTIPOINT_STANDARD_SERVER
0x0000004C
Windows MultiPoint Server Standard (installation complète)
PRODUCT_PPI_PRO
0x00000077
Windows 10 Collaboration
PRODUCT_PRO_FOR_EDUCATION
0x000000A4
Windows 10 Professionnel Éducation
PRODUCT_PRO_WORKSTATION
0x000000A1
Windows 10 Professionnel pour les Stations de travail
PRODUCT_PRO_WORKSTATION_N
0x000000A2
Windows 10 Professionnel pour les Stations de travail N
PRODUCT_PROFESSIONAL
0x00000030
Windows 10 Professionnel
PRODUCT_PROFESSIONAL_E
0x00000045
Non prise en charge
PRODUCT_PROFESSIONAL_N
0x00000031
Windows 10 Professionnel N
PRODUCT_PROFESSIONAL_WMC
0x00000067
Professionnel avec Media Center
PRODUCT_SB_SOLUTION_SERVER
0x00000032
Windows Small Business Server 2011 Essentials
PRODUCT_SB_SOLUTION_SERVER_EM
0x00000036
Serveur pour solutions SB EM
PRODUCT_SERVER_FOR_SB_SOLUTIONS
0x00000033
Serveur pour solutions SB
PRODUCT_SERVER_FOR_SB_SOLUTIONS_EM
0x00000037
Serveur pour solutions SB EM
PRODUCT_SERVER_FOR_SMALLBUSINESS
0x00000018
Windows Server 2008 pour les solutions Windows Essential Server
PRODUCT_SERVER_FOR_SMALLBUSINESS_V
0x00000023
Windows Server 2008 sans Hyper-V pour les solutions Windows Essential Server
PRODUCT_SERVER_FOUNDATION
0x00000021
Server Foundation
PRODUCT_SERVERRDSH
0x000000AF
Windows 10 Entreprise pour Virtual Desktops
PRODUCT_SMALLBUSINESS_SERVER
0x00000009
Windows Small Business Server
PRODUCT_SMALLBUSINESS_SERVER_PREMIUM
0x00000019
Small Business Server Premium
PRODUCT_SMALLBUSINESS_SERVER_PREMIUM_CORE
0x0000003F
Small Business Server Premium (installation principale)
PRODUCT_SOLUTION_EMBEDDEDSERVER
0x00000038
Windows MultiPoint Server
PRODUCT_STANDARD_EVALUATION_SERVER
0x0000004F
Server Standard (installation d’évaluation)
PRODUCT_STANDARD_SERVER
0x00000007
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.)
PRODUCT_STANDARD_SERVER_CORE
0x0000000D
Server Standard (installation principale, Windows Server 2008 R2 et versions antérieures)
PRODUCT_STANDARD_SERVER_CORE_V
0x00000028
Serveur Standard sans Hyper-V (installation principale)
PRODUCT_STANDARD_SERVER_V
0x00000024
Serveur Standard sans Hyper-V
PRODUCT_STANDARD_SERVER_SOLUTIONS
0x00000034
Solutions serveur Premium
PRODUCT_STANDARD_SERVER_SOLUTIONS_CORE
0x00000035
Server Solutions Premium (installation principale)
PRODUCT_STARTER
0x0000000B
Starter
PRODUCT_STARTER_E
0x00000042
Non prise en charge
PRODUCT_STARTER_N
0x0000002F
Starter N
PRODUCT_STORAGE_ENTERPRISE_SERVER
0x00000017
Storage Server Enterprise
PRODUCT_STORAGE_ENTERPRISE_SERVER_CORE
0x0000002E
Storage Server Enterprise (installation principale)
PRODUCT_STORAGE_EXPRESS_SERVER
0x00000014
Serveur de stockage Express
PRODUCT_STORAGE_EXPRESS_SERVER_CORE
0x0000002B
Storage Server Express (installation principale)
PRODUCT_STORAGE_STANDARD_EVALUATION_SERVER
0x00000060
Serveur de stockage Standard (installation d’évaluation)
PRODUCT_STORAGE_STANDARD_SERVER
0x00000015
Serveur de stockage Standard
PRODUCT_STORAGE_STANDARD_SERVER_CORE
0x0000002C
Storage Server Standard (installation principale)
PRODUCT_STORAGE_WORKGROUP_EVALUATION_SERVER
0x0000005F
Groupe de travail du serveur de stockage (installation d’évaluation)
PRODUCT_STORAGE_WORKGROUP_SERVER
0x00000016
Groupe de travail du serveur de stockage
PRODUCT_STORAGE_WORKGROUP_SERVER_CORE
0x0000002D
Groupe de travail du serveur de stockage (installation principale)
PRODUCT_ULTIMATE
0x00000001
Édition intégrale
PRODUCT_ULTIMATE_E
0x00000047
Non prise en charge
PRODUCT_ULTIMATE_N
0x0000001C
Ultimate N
PRODUCT_UNDEFINED
0x00000000
Un produit inconnu
PRODUCT_WEB_SERVER
0x00000011
Serveur web (installation complète)
PRODUCT_WEB_SERVER_CORE
0x0000001D
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

Voir aussi

Fonctions d’information système