GetProductInfo 函数 (sysinfoapi.h)

检索本地计算机上操作系统的产品类型,并将该类型映射到指定操作系统支持的产品类型。

若要检索在“要求”部分指定的最低受支持操作系统之前 Windows 版本的产品类型信息,请使用 GetVersionEx 函数。 还可以使用 Win32_OperatingSystem WMI 类的 OperatingSystemSKU 属性。

语法

BOOL GetProductInfo(
  [in]  DWORD  dwOSMajorVersion,
  [in]  DWORD  dwOSMinorVersion,
  [in]  DWORD  dwSpMajorVersion,
  [in]  DWORD  dwSpMinorVersion,
  [out] PDWORD pdwReturnedProductType
);

参数

[in] dwOSMajorVersion

操作系统的主版本号。 最小值为 6。

dwOSMajorVersiondwOSMinorVersiondwSpMajorVersiondwSpMinorVersion 参数的组合描述了应用程序的最大目标操作系统版本。 例如,Windows Vista 和 Windows Server 2008 版本为 6.0.0.0,Windows 7 和 Windows Server 2008 R2 版本为 6.1.0.0。 所有基于Windows 10的版本都将列为版本 6.3。

[in] dwOSMinorVersion

操作系统的次要版本号。 最小值为 0。

[in] dwSpMajorVersion

操作系统 Service Pack 的主版本号。 最小值为 0。

[in] dwSpMinorVersion

操作系统 Service Pack 的次要版本号。 最小值为 0。

[out] pdwReturnedProductType

产品类型。 此参数不能为 NULL。 如果指定的操作系统小于当前操作系统,则此信息将映射到指定操作系统支持的类型。 如果指定的操作系统大于支持的最高操作系统,则此信息将映射到当前操作系统支持的类型。

此参数可以是以下值之一, (下面的某些产品可能不支持) 。

含义
PRODUCT_BUSINESS
0x00000006
Microsoft Store
PRODUCT_BUSINESS_N
0x00000010
业务 N
PRODUCT_CLUSTER_SERVER
0x00000012
HPC Edition
PRODUCT_CLUSTER_SERVER_V
0x00000040
服务器 Hyper Core V
PRODUCT_CORE
0x00000065
Windows 10 家庭版
PRODUCT_CORE_COUNTRYSPECIFIC
0x00000063
Windows 10 家庭版中国
PRODUCT_CORE_N
0x00000062
Windows 10 家庭版 N
PRODUCT_CORE_SINGLELANGUAGE
0x00000064
Windows 10 家庭单语言版
PRODUCT_DATACENTER_EVALUATION_SERVER
0x00000050
服务器数据中心 (评估安装)
PRODUCT_DATACENTER_A_SERVER_CORE
0x00000091
服务器数据中心、Semi-Annual 通道 (核心安装)
PRODUCT_STANDARD_A_SERVER_CORE
0x00000092
服务器标准版、Semi-Annual 通道 (核心安装)
PRODUCT_DATACENTER_SERVER
0x00000008
服务器数据中心 (完整安装。对于 Windows Server 2012 及更高版本的服务器核心安装,请使用 确定 服务器核心是否正在运行的方法。)
PRODUCT_DATACENTER_SERVER_CORE
0x0000000C
服务器数据中心 (核心安装,Windows Server 2008 R2 及更早版本)
PRODUCT_DATACENTER_SERVER_CORE_V
0x00000027
没有 Hyper-V (核心安装的服务器数据中心)
PRODUCT_DATACENTER_SERVER_V
0x00000025
没有 Hyper-V 的服务器数据中心 (完整安装)
PRODUCT_EDUCATION
0x00000079
Windows 10 教育版
PRODUCT_EDUCATION_N
0x0000007A
Windows 10 教育版 N
PRODUCT_ENTERPRISE
0x00000004
Windows 10 企业版
PRODUCT_ENTERPRISE_E
0x00000046
Windows 10 企业版 E
PRODUCT_ENTERPRISE_EVALUATION
0x00000048
Windows 10 企业版评估
PRODUCT_ENTERPRISE_N
0x0000001B
Windows 10 企业版 N
PRODUCT_ENTERPRISE_N_EVALUATION
0x00000054
Windows 10 企业版 N 评估
PRODUCT_ENTERPRISE_S
0x0000007D
Windows 10 企业版 2015 LTSB
PRODUCT_ENTERPRISE_S_EVALUATION
0x00000081
Windows 10 企业评估版 2015 长期服务方案
PRODUCT_ENTERPRISE_S_N
0x0000007E
Windows 10 企业版 2015 LTSB N
PRODUCT_ENTERPRISE_S_N_EVALUATION
0x00000082
Windows 10 企业版 2015 长期服务 N 评估
PRODUCT_ENTERPRISE_SERVER
0x0000000A
Server Enterprise (完整安装)
PRODUCT_ENTERPRISE_SERVER_CORE
0x0000000E
服务器企业 (核心安装)
PRODUCT_ENTERPRISE_SERVER_CORE_V
0x00000029
没有 Hyper-V (核心安装的服务器企业版)
PRODUCT_ENTERPRISE_SERVER_IA64
0x0000000F
适用于基于 Itanium 的系统的服务器企业版
PRODUCT_ENTERPRISE_SERVER_V
0x00000026
不带 Hyper-V (完整安装) 的服务器企业版
PRODUCT_ESSENTIALBUSINESS_SERVER_ADDL
0x0000003C
Windows Essential Server 解决方案附加
PRODUCT_ESSENTIALBUSINESS_SERVER_ADDLSVC
0x0000003E
Windows Essential Server 解决方案附加 SVC
PRODUCT_ESSENTIALBUSINESS_SERVER_MGMT
0x0000003B
Windows Essential Server 解决方案管理
PRODUCT_ESSENTIALBUSINESS_SERVER_MGMTSVC
0x0000003D
Windows Essential Server 解决方案管理 SVC
PRODUCT_HOME_BASIC
0x00000002
家庭普通版
PRODUCT_HOME_BASIC_E
0x00000043
不支持
PRODUCT_HOME_BASIC_N
0x00000005
Home Basic N
PRODUCT_HOME_PREMIUM
0x00000003
家庭高级版
PRODUCT_HOME_PREMIUM_E
0x00000044
不支持
PRODUCT_HOME_PREMIUM_N
0x0000001A
家庭高级版 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 企业版
PRODUCT_IOTENTERPRISE_S
0x000000BF
Windows IoT 企业版 LTSC
PRODUCT_IOTUAP
0x0000007B
Windows 10 IoT Core
PRODUCT_IOTUAPCOMMERCIAL
0x00000083
Windows 10 IoT 核心版商业版
PRODUCT_MEDIUMBUSINESS_SERVER_MANAGEMENT
0x0000001E
Windows Essential Business Server Management Server
PRODUCT_MEDIUMBUSINESS_SERVER_MESSAGING
0x00000020
Windows Essential Business Server Messaging Server
PRODUCT_MEDIUMBUSINESS_SERVER_SECURITY
0x0000001F
Windows Essential Business Server 安全服务器
PRODUCT_MOBILE_CORE
0x00000068
Windows 10 移动版
PRODUCT_MOBILE_ENTERPRISE
0x00000085
Windows 10 移动企业版
PRODUCT_MULTIPOINT_PREMIUM_SERVER
0x0000004D
Windows MultiPoint Server Premium (完整安装)
PRODUCT_MULTIPOINT_STANDARD_SERVER
0x0000004C
Windows MultiPoint Server Standard (完整安装)
PRODUCT_PPI_PRO
0x00000077
Windows 10 协同版
PRODUCT_PRO_FOR_EDUCATION
0x000000A4
Windows 10 专业教育版
PRODUCT_PRO_WORKSTATION
0x000000A1
Windows 10 专业工作站版
PRODUCT_PRO_WORKSTATION_N
0x000000A2
Windows 10 专业工作站版 N
PRODUCT_PROFESSIONAL
0x00000030
Windows 10 专业版
PRODUCT_PROFESSIONAL_E
0x00000045
不支持
PRODUCT_PROFESSIONAL_N
0x00000031
Windows 10 专业版 N
PRODUCT_PROFESSIONAL_WMC
0x00000067
专业媒体中心
PRODUCT_SB_SOLUTION_SERVER
0x00000032
Windows Small Business Server 2011 Essentials
PRODUCT_SB_SOLUTION_SERVER_EM
0x00000036
适用于 SB Solutions 的服务器 EM
PRODUCT_SERVER_FOR_SB_SOLUTIONS
0x00000033
适用于 SB 解决方案的服务器
PRODUCT_SERVER_FOR_SB_SOLUTIONS_EM
0x00000037
适用于 SB Solutions 的服务器 EM
PRODUCT_SERVER_FOR_SMALLBUSINESS
0x00000018
Windows Server 2008 for Windows Essential Server 解决方案
PRODUCT_SERVER_FOR_SMALLBUSINESS_V
0x00000023
不带 Hyper-V 的 Windows Server 2008 for Windows Essential Server 解决方案
PRODUCT_SERVER_FOUNDATION
0x00000021
Server Foundation
PRODUCT_SERVERRDSH
0x000000AF
虚拟桌面Windows 10 企业版
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 (核心安装)
PRODUCT_SOLUTION_EMBEDDEDSERVER
0x00000038
Windows MultiPoint Server
PRODUCT_STANDARD_EVALUATION_SERVER
0x0000004F
Server Standard (评估安装)
PRODUCT_STANDARD_SERVER
0x00000007
Server Standard (完整安装。对于 Windows Server 2012 及更高版本的服务器核心安装,请使用确定 服务器核心是否正在运行的方法。)
PRODUCT_STANDARD_SERVER_CORE
0x0000000D
Server Standard (核心安装,Windows Server 2008 R2 及更早版本)
PRODUCT_STANDARD_SERVER_CORE_V
0x00000028
没有 Hyper-V (核心安装) 的服务器标准版
PRODUCT_STANDARD_SERVER_V
0x00000024
不带 Hyper-V 的服务器标准版
PRODUCT_STANDARD_SERVER_SOLUTIONS
0x00000034
服务器解决方案高级版
PRODUCT_STANDARD_SERVER_SOLUTIONS_CORE
0x00000035
Server Solutions Premium (核心安装)
PRODUCT_STARTER
0x0000000B
初学者
PRODUCT_STARTER_E
0x00000042
不支持
PRODUCT_STARTER_N
0x0000002F
初学者 N
PRODUCT_STORAGE_ENTERPRISE_SERVER
0x00000017
Storage Server Enterprise
PRODUCT_STORAGE_ENTERPRISE_SERVER_CORE
0x0000002E
Storage Server Enterprise (核心安装)
PRODUCT_STORAGE_EXPRESS_SERVER
0x00000014
Storage Server Express
PRODUCT_STORAGE_EXPRESS_SERVER_CORE
0x0000002B
Storage Server Express (核心安装)
PRODUCT_STORAGE_STANDARD_EVALUATION_SERVER
0x00000060
Storage Server Standard (评估安装)
PRODUCT_STORAGE_STANDARD_SERVER
0x00000015
存储服务器标准
PRODUCT_STORAGE_STANDARD_SERVER_CORE
0x0000002C
存储服务器标准 (核心安装)
PRODUCT_STORAGE_WORKGROUP_EVALUATION_SERVER
0x0000005F
存储服务器工作组 (评估安装)
PRODUCT_STORAGE_WORKGROUP_SERVER
0x00000016
存储服务器工作组
PRODUCT_STORAGE_WORKGROUP_SERVER_CORE
0x0000002D
存储服务器工作组 (核心安装)
PRODUCT_ULTIMATE
0x00000001
旗舰版
PRODUCT_ULTIMATE_E
0x00000047
不支持
PRODUCT_ULTIMATE_N
0x0000001C
Ultimate N
PRODUCT_UNDEFINED
0x00000000
未知产品
PRODUCT_WEB_SERVER
0x00000011
Web 服务器 (完整安装)
PRODUCT_WEB_SERVER_CORE
0x0000001D
Web 服务器 (核心安装)

返回值

如果函数成功,则返回值为非零值。

如果函数失败,则返回值为零。 如果其中一个输入参数无效,此函数将失败。

注解

若要检测是否已安装服务器角色或功能,请使用 服务器功能 WMI 提供程序。

Windows 的后续版本会将它支持的产品类型映射到每个受支持的以前版本的 Windows 支持的产品类型集,再映射到版本 6.0.0.0。 因此,对其中任何值执行相等性测试的应用程序将在未来的版本中继续工作,即使添加新的产品类型也是如此。

PRODUCT_*_SERVER_CORE值不会在 Windows Server 2012 及更高版本中返回。 例如,基本服务器版本服务器数据中心用于生成两个不同的安装选项:“完整服务器”和“核心服务器”。 对于 Windows Server 2012, GetProductInfo 将返回PRODUCT_DATACENTER,而不考虑在产品安装过程中使用的选项。 如上所述,对于 Windows Server 2012 及更高版本的服务器核心安装,请使用 确定服务器核心是否正在运行的方法。

下表指示 6.1.0.0 中引入的产品类型,以及如果在 6.1.0.0 系统上使用版本 6.0.0.0 调用 GetProductInfo ,它们将映射到什么。

6.1.0.0 的新增功能 返回的值与 6.0.0.0
PRODUCT_PROFESSIONAL PRODUCT_BUSINESS
PRODUCT_PROFESSIONAL_N PRODUCT_BUSINESS_N
PRODUCT_STARTER_N PRODUCT_STARTER
 

若要编译使用此函数的应用程序,请将_WIN32_WINNT定义为 0x0600 或更高版本。 有关详细信息,请参阅 使用 Windows 标头

示例

有关示例,请参阅 获取系统版本

要求

   
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 sysinfoapi.h (包括 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

系统信息函数