如何在运行时检测到.NET版本4.5当前正在运行您的代码?我从http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=27541安装了.NET 4.5开发人员预览版,该版本“替代”了.NET 4.0版本。但是,检测.NET Framework版本的旧方法似乎返回4.0(更准确地说是在我的PC上为4.0.30319.17020),而不是4.5(可能是向后兼容,还是?):using System;namespace ConsoleApplication{ class Program { static void Main(string[] args) { var version = Environment.Version; Console.WriteLine(version.ToString()); Console.ReadKey(); } }}如何检测我的代码是否确实由.NET 4.5执行?
4 回答
翻过高山走不出你
TA贡献1875条经验 获得超3个赞
若要确定您的应用程序正在运行的.NET确切补丁,请进行以下调用以找到mscorlib的内部版本号:
System.Diagnostics.FileVersionInfo.GetVersionInfo(typeof(int).Assembly.Location).ProductVersion
它当前为我返回4.6.1055.0,它对应于.NET 4.6.1。
慕妹3146593
TA贡献1820条经验 获得超9个赞
.NET Framework 4.5是就地升级到4.0。这宽松地意味着,如果您在版本4.0或4.5的运行时上运行,并且已安装4.5,则您肯定在4.5上运行。您的支票可能会如下所述。
让我们将4.0和4.5运行时称为4.0版本的运行时。
检查您是否在4.0版本的运行时上运行:
那么您将在4.0版本的运行时上运行。
如果您的程序集已编译为目标.NET 4.0,或者
Environment.Version.Major == 4 && Environment.Version.Minor == 0
通过检查已安装的版本,检查4.0版本的运行时实际上是版本4.0还是4.5。
在键下
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client
,检查_Version_
值。如果开始"4.0"
于4.0运行时,则开始"4.5"
于4.5运行时。
- 4 回答
- 0 关注
- 656 浏览
添加回答
举报
0/150
提交
取消