17

我们正在检测操作系统版本以进行统计。从 Windows 8.1 开始,操作系统在使用GetVersion. 但是,从 .NET 4.5.1 开始System.Environment.OSVersion 仍然调用此 API。因此,我们已将8.1 的 GUID添加到清单中,效果很好。

现在,我想为 Windows 10 做同样的准备。这个 GUID 是已知的吗?

(编辑) P/Invoking VerSetConditionMask 和 VerifyVersionInfo 检查 6.4 或更高版本似乎确实有效。

4

2 回答 2

26
<!-- This Id value indicates the application supports Windows Threshold functionality-->
<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>

资料来源:http ://social.msdn.microsoft.com/Forums/azure/en-US/07cbfc3a-bced-45b7-80d2-a9d32a7c95d4/supportedos-manifest-for-windows-10?forum=windowsgeneraldevelopmentissues

于 2014-10-02T01:33:45.707 回答
7

其他操作系统上下文的其他 GUID:

操作系统 GetVersionEx 支持的操作系统 ID
视窗 10 10.0†</td> <supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>
视窗 8.1 6.3 <supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/>
视窗 8 6.2 <supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/>
Windows 7的 6.1 <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
视窗 6.0 <supportedOS ID="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>
视窗 5.1 不适用
视窗 2000 5.0 不适用
视窗 NT 4 4.0 不适用
视窗 NT 3.51 3.51 不适用
视窗 NT 3.1 3.1 不适用

† 是构建 9926 之前的版本 6.4。它在构建 9926(2015 年 1 月 23 日)之后报告 10.0。

维护这些值的文档的页面:

操作系统上下文

在特定操作系统环境下在 Windows 10 上运行时,返回的版本为:

操作系统上下文 GetVersionEx
视窗 6.2
Windows 7的 6.2
视窗 8 6.2
视窗 8.1 6.3
视窗 10 10.0
于 2017-01-25T15:50:23.050 回答