为了账号安全,请及时绑定邮箱和手机立即绑定

如何在运行时检测到.NET版本4.5当前正在运行您的代码?

如何在运行时检测到.NET版本4.5当前正在运行您的代码?

江户川乱折腾 2019-12-16 11:11:52
如何在运行时检测到.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。


查看完整回答
反对 回复 2019-12-16
?
慕妹3146593

TA贡献1820条经验 获得超9个赞

.NET Framework 4.5是就地升级到4.0。这宽松地意味着,如果您在版本4.0或4.5的运行时上运行,并且已安装4.5,则您肯定在4.5上运行。您的支票可能会如下所述。

让我们将4.0和4.5运行时称为4.0版本的运行时

  1. 检查您是否在4.0版本的运行时上运行:

    那么您将在4.0版本的运行时上运行。

    • 如果您的程序集已编译为目标.NET 4.0,或者

    • Environment.Version.Major == 4 && Environment.Version.Minor == 0

  2. 通过检查已安装的版本,检查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运行时。


查看完整回答
反对 回复 2019-12-16
  • 4 回答
  • 0 关注
  • 656 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信