小编典典

在 .NET 中检测 Windows 版本

all

如何检测 .NET 中的 Windows 操作系统版本?

我可以使用什么代码?


阅读 60

收藏
2022-07-29

共1个答案

小编典典

System.Environment.OSVersion具有区分大多数
Windows 操作系统主要版本(但不是全部)所需的信息。它由映射到以下 Windows 版本的三个组件组成:

+------------------------------------------------------------------------------+
|                    |   PlatformID    |   Major version   |   Minor version   |
+------------------------------------------------------------------------------+
| Windows 95         |  Win32Windows   |         4         |          0        |
| Windows 98         |  Win32Windows   |         4         |         10        |
| Windows Me         |  Win32Windows   |         4         |         90        |
| Windows NT 4.0     |  Win32NT        |         4         |          0        |
| Windows 2000       |  Win32NT        |         5         |          0        |
| Windows XP         |  Win32NT        |         5         |          1        |
| Windows 2003       |  Win32NT        |         5         |          2        |
| Windows Vista      |  Win32NT        |         6         |          0        |
| Windows 2008       |  Win32NT        |         6         |          0        |
| Windows 7          |  Win32NT        |         6         |          1        |
| Windows 2008 R2    |  Win32NT        |         6         |          1        |
| Windows 8          |  Win32NT        |         6         |          2        |
| Windows 8.1        |  Win32NT        |         6         |          3        |
+------------------------------------------------------------------------------+
| Windows 10         |  Win32NT        |        10         |          0        |
+------------------------------------------------------------------------------+

对于允许您更完整地了解当前执行环境正在其中运行的 Windows 的 确切
版本的库,请查看此库

重要提示 :如果您的可执行程序集清单未明确声明您的 exe 程序集与 Windows 8.1 和 Windows 10.0
兼容,System.Environment.OSVersion则将返回 Windows 8 版本,即 6.2,而不是 6.3 和
10.0!来源:这里

更新 :在 .NET 5.0
及更高版本中,System.Environment.OSVersion始终返回实际的操作系统版本。有关详细信息,请参阅Environment.OSVersion
返回正确的操作系统版本

2022-07-29