.NET Framework各版本汇总以及之间的关系

Posted kingmax54212008

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.NET Framework各版本汇总以及之间的关系相关的知识,希望对你有一定的参考价值。

.NET Framework

.NET版本1.01.12.03.03.54.04.5
完整版本1.0.3705.01.1.4322.5732.0.50727.423.0.4506.303.5.21022.84.0.30319.14.5.40805
发布时间2002-02-132003-04-242005-11-072006-11-062007-11-192010-04-122012-05-24
VS开发版本VS2002VS2003VS2005 VS2008VS2010VS2012
Windows默认安装 Windows Server 2003Windows Server 2003
Windows Server 2008
Windows Vista
Windows Server 2008
Windows 7
Windows Server 2008 R2
 Windows 8
Windows Server 2012
下载.NET Framework 1.0 (SP3).NET Framework 1.1 (SP1).NET Framework 2.0 (SP2).NET Framework 3.0 (SP2).NET Framework 3.5 (SP1).NET Framework 4.0.NET Framework 4.5
说明Microsoft Internet Explorer 5.01 或更高版本Microsoft Internet Explorer 5.01 或更高版本Windows Installer 3.1 或更高版本 Internet Explorer 6.0 或更高版本 包括 .NET Framework 2.0 Service Pack 2 和 .NET Framework 3.0 Service Pack 2 累积更新Windows Installer 3.1 或更高版本 Internet Explorer 5.01 或更高版本.NET Framework 4.5 RC 是一个针对 .NET Framework 4 的高度兼容的就地更新。
支持的windows版本Windows 98
Windows NT
Windows Server 2000
Windows Server 2003
Windows XP
Windows Server 2000
Windows Server 2003
Windows XP
Windows Server 2003
Windows XP
Windows Server 2003Windows Server 2003
Windows Server 2008,
Windows Vista
Windows XP
Windows XP SP3
Windows Server 2003 SP2
Windows Vista SP1
Windows Server 2008
Windows 7
Windows Vista SP2
Windows 7
Windows 8
Windows Server 2008
Windows Server 2012

版本关系

.NET Framework 版本 2.0、3.0 和 3.5 是使用 CLR (CLR 2.0) 的相同版本生成的。 每个版本增量地生成于早期 .NET Framework 版本。 在计算机上不可能并排运行版本 2.0、3.0 和 3.5。 在安装 .NET Framework 3.5 SP1 时,会自动安装 2.0 和 3.0 层。 但是,.NET Framework 4 关闭此分层方法。 以 .NET Framework 4 开始,可使用进程内并行承载来在单独的进程中运行多个公共语言运行时 (CLR) 版本。 Apps 的 2.0 ,3.0 和 3.5 版本可以全部在 3.5 版运行,但是,它们在 4 版或更高版本将不起作用。.NET Framework 4.5 是就地更新,替换您的计算机上的 .NET Framework 4。 在安装此更新后,您的 .NET Framework 4 应用程序在无需重新编译的情况下应继续运行。 但是,.NET Framework 中的某些更改可能需要更改您的应用程序代码。 有关更多信息,在 .NET Framework 4.5 中运行现有应用程序前,请参见 在 .NET Framework 4.5 中的应用程序兼容性。 有关安装当前版本的更多信息,请参见 安装 .NET Framework 4.5。 有关对 .NET Framework 的支持的信息,请参见 Microsoft 支持网站上的 Microsoft .NET Framework Support Lifecycle Policy(Microsoft .NET Framework 支持生命周期策略)。   以上是微软官方解释。 我理解的意思是,3.5包含了2.0和3.0,安装了3.5就自动安装了2.0和3.0。这样也说明了为什么3.5的安装包会很大的原因。win7以后好像就不能直接安装2.0只能通过安装3.5来支持2.0的程序。 4.0是一个过渡版本,安装4.5是会覆盖4.0。并且4.0可在4.5环境中运行。 值得注意的是4.5不支持XP系统了。

获取.NET框架版本

using System; using Microsoft.Win32;   public class GetDotNetVersion      public static void Main()               Console.WriteLine( ".NET框架版本:" );          using (RegistryKey ndpKey = RegistryKey.OpenRemoteBaseKey(RegistryHive.LocalMachine, "" ).OpenSubKey( @"SOFTWARE\\Microsoft\\NET Framework Setup\\NDP\\" ))                       foreach ( string versionKeyName in ndpKey.GetSubKeyNames())                               if (versionKeyName.StartsWith( "v" ))                                         RegistryKey versionKey = ndpKey.OpenSubKey(versionKeyName);                      string name = ( string )versionKey.GetValue( "Version" , "" );                      string sp = versionKey.GetValue( "SP" , "" ).ToString();                      string install = versionKey.GetValue( "Install" , "" ).ToString();                      if (install == "" ) //no install info, ust be later                          Console.WriteLine(versionKeyName + "  " + name);                      else                                               if (sp != "" && install == "1" )                                                       Console.WriteLine(versionKeyName + "  " + name + "  SP" + sp);                                                                    if (name != "" )                                               continue ;                                           foreach ( string subKeyName in versionKey.GetSubKeyNames())                                               RegistryKey subKey = versionKey.OpenSubKey(subKeyName);                          name = ( string )subKey.GetValue( "Version" , "" );                          if (name != "" )                              sp = subKey.GetValue( "SP" , "" ).ToString();                          install = subKey.GetValue( "Install" , "" ).ToString();                          if (install == "" ) //no install info, ust be later                              Console.WriteLine(versionKeyName + "  " + name);                          else                                                       if (sp != "" && install == "1" )                                                               Console.WriteLine( "  " + subKeyName + "  " + name + "  SP" + sp);                                                           else if (install == "1" )                                                               Console.WriteLine( "  " + subKeyName + "  " + name);                                                                                                                              Console.WriteLine();          Console.WriteLine( "操作系统版本:" + System.Environment.OSVersion.ToString());          Console.WriteLine( "当前.NET框架版本:" + System.Environment.Version.ToString());          Console.ReadKey();     

参考资料

http://zh.wikipedia.org/wiki/.Net_Framework
http://msdn.microsoft.com/en-us/library/bb822049.aspx
http://www.microsoft.com/net

以上是关于.NET Framework各版本汇总以及之间的关系的主要内容,如果未能解决你的问题,请参考以下文章

.net FrameWork各个版本之间的发展[转]

Microsoft.NET Framework 各个版本有啥区别

线程的基本概念线程的基本状态以及状态之间的关 系

.NET生态现状:超一半 .NET开发者使用C# 8.NET Framework使用量减少

WinXP是不是能安装.NET Framework 4.5

(63)C#里.net Framework的版本