3

编码:

Console.WriteLine(Environment.Version);

为.NET Framework 2.0、3.0 和 3.5 SP1返回相同的结果 (2.0.50727.5448) 。如何了解已安装的 .NET 平台的确切版本?

4

3 回答 3

4
System.Runtime.InteropServices.RuntimeEnvironment.GetSystemVersion()
于 2012-04-20T15:43:06.413 回答
4

您需要读取注册表项以检测服务包粒度的版本。本文解释了您需要寻找哪些键/值对。

例如,您可以3.5通过3.5 SP1查看内部的值来判断

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5

“平原” 3.5 有Install = 1,而SP1SP >=1

滚动到文章底部的链接以查看整个表格。

于 2012-04-20T15:47:03.900 回答
4

2.0、3,0、3,5 和 3.5SPx 都基于同一组核心 2.0 库。基本上所有这些版本都是 2.0 加上附加组件。此答案包含版本列表:.NET Framework、CLR 和 Visual Studio 版本号如何相互关联?及相关信息。

因此,当您询问运行时环境版本是什么时,您会得到 2.0(据我所知,其他变体是 1、1.1 和 4.0)。

如果需要3/3.5/SP区分@dasblinkenlight给了你答案。否则解释你试图做什么以获得更多建议。

于 2012-04-20T15:59:26.467 回答