【发布时间】:2012-10-15 10:52:31
【问题描述】:
我需要在我的程序中检测 Windows 2012 上的版本。
在以前的操作系统上,我使用了 GetProductInfo 的 pdwReturnedProductType,但根据 msdn:
PRODUCT_*_SERVER_CORE 值不会在 Windows Server 2012 中返回。例如,基础服务器
版本,服务器数据中心,用于构建两种不同的安装选项:“完整服务器”
和“核心服务器”。对于 Windows Server 2012,GetProductInfo 将返回 PRODUCT_DATACENTER 无论在产品安装过程中使用什么选项。
还有其他检测核心版本的可能性吗?
谢谢。
【问题讨论】:
-
为什么?这两个“产品”现在是同一个产品,但安装了不同的组件。
-
在我的例子中,因为 Core 版本使用了特殊版本的 .NET (microsoft.com/en-us/download/details.aspx?id=22833),这有点不同。某些 .NET Framework 功能不适用于 Server Core。
-
呃,Server 2008 的 4.0 .Net 框架在 Server 2012 上不是完全多余的吗(包括 4.5)?
-
和Core版还是有区别的。
标签: c++ core windows-server