TearSnow Fan


.NET Framework 各版本介绍和下载链接汇总

一、.NET Framework 版本介绍

自2000年6月22日微软向全球宣布自己的.NET战略,到现在已经十年多了。作为.NET战略的基础,Microsoft .NET Framework 也已经发行了多个版本。下面,我们就来看看这些年来微软到底发布了哪些 .NET Framework 版本。

.NET Framework & CLR Version

Framework  CLR and Assemblies            Release
----------------------------------------------------------
1.0 RTM    1.0.3705.0                    Released with VS.NET (aka VS.NET 2002)
1.0 SP1    1.0.3705.209
1.0 SP2    1.0.3705.288
1.0 SP3    1.0.3705.6018

1.1 RTM    1.1.4322.573                  Released with VS.NET 2003
1.1 SP1    1.1.4322.2032
1.1 SP1    1.1.4322.2300                (Windows Server 2003 32-bit version)

2.0 RTM    2.0.50727.42                  Released with VS2005 RTM
2.0 SP1    2.0.50727.1433                Released with VS2008 RTM and .Net 3.5 RTM
2.0 SP2    2.0.50727.3053                Released with VS2008 SP1 and .Net 3.5 SP1

Framework  CLR           New assemblies
----------------------------------------------------------
3.0 RTM    2.0 RTM       3.0.4506.30     Only "out-of-band" non-SP framework release
3.0 SP1    2.0 SP1       3.0.4506.648    Released with VS2008 RTM and .Net 3.5 RTM
3.0 SP2    2.0 SP2       3.0.4506.2152   Released with VS2008 SP1 and .Net 3.5 SP1

3.5 RTM    2.0 SP1       3.5.21022.8     Released with VS2008 RTM and .Net 3.5 RTM
3.5 SP1    2.0 SP2       3.5.30729.1     Released with VS2008 SP1

Framework  CLR and Assemblies            Release
----------------------------------------------------------
4.0 RTM    4.0.30319.1                   Released with VS2010

注意,没有 CLR 3.0 和 CLR 3.5。

有些 Windows 操作系统中已经内置了 .NET Framework,如下所示:

Version Version Number Release Date Visual Studio Default in Windows
1.0 1.0.3705.0 2002-02-13 Visual Studio .NET
1.1 1.1.4322.573 2003-04-24 Visual Studio .NET 2003 Windows Server 2003
2.0 2.0.50727.42 2005-11-07 Visual Studio 2005
3.0 3.0.4506.30 2006-11-06 Windows Vista, Server 2008
3.5 3.5.21022.8 2007-11-19 Visual Studio 2008 Windows 7, Server 2008 R2
4.0 4.0.30319.1 2010-04-12 Visual Studio 2010

下图形象地汇总了版本历史记录以及标识 Windows 所安装的版本:

值得一提的是,我们常用的 Windows XP Service Pack 3 就是没有内置任何版本的 .NET Framework 的。

各个 .NET Framework 版本之间的关系如下图:

总结一下:

  • .NET Framework 1.0 (CLR 1.0) 和 1.1 (CLR 1.1) 已经过时,强烈建议不要使用。
  • .NET Framework 2.0 (CLR 2.0) 是目前广泛使用的版本,提供了大部分的基础功能。
  • .NET Framework 3.0 (CLR 2.0) 增加了 WPF、WCF、WF 和 Card Space 等功能。
  • .NET Framework 3.5 (CLR 2.0) 增加了 LINQ、ADO.NET Entity Framework 等功能。
  • .NET Framework 4.0 (CRL 4.0) 重新实现并改进了以前版本 .NET Framework 的功能,并且增加了 Parallel LINQ、Task Parallel Library 等新功能,强烈建议使用。旧版本的 .NET 程序可以通过配置 <supportedRuntime> 元素在 CLR 4.0 运行。
  • .NET Framework 4.5 是一个针对 .NET Framework 4 的高度兼容的就地更新。
  • .NET Framework 4.5.1 是针对 .NET Framework 4 和 Microsoft .NET Framework 4.5 的就地更新,兼容性良好。

在 CLR 4.0 上运行旧版本 .NET 程序的方法如下:

例如,在只安装了.NET 4.0 时,运行使用.NET Framework 3.5 编写的程序 ClrInfo35.exe,会出现如下提示:

就是说,旧版本的 .NET 程序不能运行在新版本的 CLR 4.0 上面。根据博客园作者银河的猜测,虽然微软的策略是强烈建议程序在开发时使用的运行时版本下运行(这样可以保证最大的兼容性),但实际上 .NET Framework 4.0 (CRL 4.0) 重新实现并改进了以前版本 .NET Framework 的全部功能。旧版本的 .NET 程序可以通过配置 <supportedRuntime> 元素在 CLR 4.0 运行。

为了在 CLR 4.0 上运行 ClrInfo35.exe 程序,只需要在同一目录下放一个以下内容的 ClrInfo35.exe.config 文件就行了:

<configuration>
  <startup>
    <supportedRuntime version="v4.0"/>
  </startup>
</configuration>

其运行结果和使用.NET Framewrk 4.0 重新编译一遍是一样的。

还有就是,安装了 .NET Framework 4.0 后,只能报告“Unable to find a version of the runtime to run this application”,而不能象以前一样明确指出是需要某个版本的 CLR,如下图:

.

二、查看 .NET Framework 版本的方法

2.1 IE + JavaScript 方法

在 IE 浏览器的地址栏输入: “javascript:alert(navigator.userAgent)” (注意:大小写要完全一致,不输入引号),可以查看本机安装了 .NET Framework 的哪些版本。

2.2 Framework Detector

http://frameworkdetector.codeplex.com/

2.3 查看 CLR 版本的方法(不是 .NET Framework 版本)

请参阅博客园作者“银河”的这篇文章:.NET Framework CLR 版本检测,他编写了C#命令行程序来查看CLR版本,并在文章中附上了源码。

我用其源码编译了工具,单击此处下载,软件需要在命令行模式下运行。

2.4 附表:.NET Framework 完整版本列表

Version Release Date
1.0.3705.0 1.0 RTM 2002-02-13
1.0.3705.209 1.0 SP1 2002-03-19
1.0.3705.288 1.0 SP2 2002-08-07
1.0.3705.6018 1.0 SP3 2004-08-25
1.0.3705.6060 1.0 SP3 (KB928367) 2007-07-10
1.1.4322.573 1.1 RTM 2003-04-24
1.1.4322.2032 1.1 SP1 (MSI-based) 2004-08-25
1.1.4322.2300 1.1 SP1 (OCM-based On Windows Server 2003) 2004-08-25
1.1.4322.2407 1.1 SP1 (KB928366) 2007-07-10
2.0.40607.16 2.0 Beta 1 2004-07-03
2.0.50215.44 2.0 Beta 2 2005-04-18
2.0.50727.42 2.0 RTM (MSI-based) 2005-10-27
2.0.50727.312 2.0 RTM (CBS-based On Windows Vista) 2007-01-30
2.0.50727.832 2.0 RTM (KB928365) 2007-07-10
2.0.50727.1378 2.0 SP1 Beta 2007-07-26
2.0.50727.1433 2.0 SP1 2007-11-19
2.0.50727.3053 2.0 SP2 2008-08-11
3.0.04506.26 3.0 RTM (CBS-based On Windows Vista) 2007-01-30
3.0.04506.30 3.0 RTM (MSI-based)  (KB932471) 2006-11-07
3.0.04506.590 3.0 SP1 Beta 2007-07-26
3.0.04506.648 3.0 SP1 2007-11-19
3.0.04506.2152 3.0 SP2 2008-08-11
3.5.20404.0 3.5 Beta 1 2007-04-19
3.5.20706.1 3.5 Beta 2 2007-07-26
3.5.21022.8 3.5 RTM 2007-11-19
3.5.30729.1 3.5 SP1 2008-08-11
4.0.30319.1 4.0 RTM 2010-04-12
4.0.30319.225 4.0 SP1 2011-03-08
4.0.30319.17929 4.5 RTM 2012-08-15
4.0.30319.18034 4.5 (KB2750147) 2013-01-08

有关版本号命名的知识可以查看《软件项目版本号的命名规则》一文中的“.Net Framework 风格的版本号命名格式”。

关于 Microsoft .NET Compact Framework 的版本请参阅“黎波”的文章:“如何判断 .NET Compact Framework 的版本”。

.

三、各版本 .NET 和下载链接

几个重要的 .NET Framework 安装程序的大小如下(以32位为例,.NET 1.X 已经淘汰就不说了):

Version File Date & Time    Bytes      MB          File Name
------- ---------------- ----------- ----- ---------------------------
2.0 SP2 2008/07/30 09:54  25,001,480  23.8 NetFx20SP2_x86.exe
3.5 SP1 2008/07/30 16:22 242,743,296 231.5 dotnetfx35setup.exe
4.0 RTM 2010/03/19 09:44  50,449,456  48.1 dotNetFx40_Full_x86_x64.exe
WIC     2009/11/23 20:24   1,226,536   1.2 wic_x86_chs.exe

可以看出,.NET Framework 3.5 SP1 安装程序特别大,而 .NET Framework 4.0 RTM 安装程序反而变小了很多,不知 Microsoft 使用了什么技术,在增加功能的基础上还大大减少了安装程序的大小。

需要说明的关系:

安装 .NET Framework 3.5 SP1 时,会自动安装 .NET Framework 2.0 SP2 和 .NET Framework 3.0 SP2。

另外,.NET Framework 4.0 包括 .NET Framework 4 Client Profile 和 .NET Framework 4 Extended 两部分,其中的 Microsoft .NET Framework 4 Client Profile 也可以单独安装的,这样安装包(41.0MB)会小一些,但是有些扩展功能就不能用了。详细分析可以看这篇MSDN BLOG上的文章:What’s new in .NET Framework 4 Client Profile RTM.

下载地址汇总(重要的版本已经使用粗体标注)

2.0:22.42MB

http://download.microsoft.com/download/5/6/7/567758a3-759e-473e-bf8f-52154438565a/dotnetfx.exe

2.0 简体中文语言包:1.71MB

http://download.microsoft.com/download/2/c/7/2c791d8a-0ef9-49fa-9528-68b79626b9cb/langpack.exe

2.0 sp1:23.6MB

http://download.microsoft.com/download/0/8/c/08c19fa4-4c4f-4ffb-9d6c-150906578c9e/NetFx20SP1_x86.exe

2.0 sp2:23.84MB

http://download.microsoft.com/download/c/6/e/c6e88215-0178-4c6c-b5f3-158ff77b1f38/NetFx20SP2_x86.exe

3.0 完整组件包:50.33MB

http://download.microsoft.com/download/3/F/0/3F0A922C-F239-4B9B-9CB0-DF53621C57D9/dotnetfx3.exe

3.0 sp1:2.4MB(WEB安装引导文件)

http://download.microsoft.com/download/4/9/0/49001df1-af88-4a4d-b10f-2d5e3a8ea5f3/dotnetfx30SP1setup.exe

3.0 sp2:似乎找不到官方的相关下载地址(随 .NET 3.5 SP1 发布)

3.5 完整组件包:197.12MB

http://download.microsoft.com/download/6/0/f/60fc5854-3cb8-4892-b6db-bd4f42510f28/dotnetfx35.exe

3.5 sp1 完整安装包:231.50MB

http://download.microsoft.com/download/2/0/e/20e90413-712f-438c-988e-fdaa79a8ac3d/dotnetfx35.exe

4.0 独立安装程序:48.1MB

http://download.microsoft.com/download/9/5/A/95A9616B-7A37-4AF6-BC36-D6EA96C8DAAE/dotNetFx40_Full_x86_x64.exe

4.0 web安装程序:869KB

http://download.microsoft.com/download/1/B/E/1BE39E79-7E39-46A3-96FF-047F95396215/dotNetFx40_Full_setup.exe

4.5 独立安装程序:48.0MB

http://download.microsoft.com/download/B/A/4/ba4a7e71-2906-4b2d-a0e1-80cf16844f5f/dotnetfx45_full_x86_x64.exe

4.5 Web安装程序:982KB

http://download.microsoft.com/download/B/A/4/BA4A7E71-2906-4B2D-A0E1-80CF16844F5F/dotNetFx45_Full_setup.exe

WIC (Windows Imaging Component) :XP操作系统在安装.NET 4之前可能需要

.NET Framework 的建议安装步骤:

要成功安装更新,请卸载计算机上的所有 .NET Framework 版本,然后在计算机上重新安装所有 .NET Framework 版本。您可能需要完成下列方法中的多种方法。

方法 1:手动删除并重新安装 .NET Framework

要手动删除并重新安装 .NET Framework,请按照下列步骤操作:

  • a. 单击“开始”,然后单击“控制面板”。
  • b. 双击“添加或删除程序”。
  • c. 记下计算机上已安装的每个 .NET Framework 版本,然后卸载所有 .NET Framework 版本。
  • d. 出现提示时,重新启动计算机。

方法2:使用 Windows Installer 清理实用程序

可以使用 Windows Installer 清理实用程序来清理所有 .NET Framework 版本的 MSI 数据库状态。

从 Microsoft 下载中心下载 Windows Installer 清理实用程序包。

http://download.microsoft.com/download/e/9/d/e9d80355-7ab4-45b8-80e8-983a48d5e1bd/msicuu2.exe

卸载完成后,重新启动计算机并安装所有所需的 .NET Framework 版本,安装完成后再次重新启动计算机。

注意:重新安装了所有 .NET Framework 版本后,您可以使用 Windows Update 来检查 .NET Framework 的更新。

.

参考资料:

[1] 博客园:银河:Microsoft .NET Framework 以及 CLR 的版本

[2] 博客园:银河:Microsoft .NET Framework 的版本

[3] 博客园:肖品:.NET Framework 各个版本之间的关系以及下载地址整理汇总

[4] MSDN:What’s new in .NET Framework 4 Client Profile RTM

[5] MSDN:.NET Framework 版本和依赖关系(官方文档,很通俗,强烈推荐阅读)

本文固定链接: http://blog.xieyc.com/dotnetfx-versions-summary/ | 小谢的小站

该日志由 xieyc 于2013年07月28日发表在 编程 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: .NET Framework 各版本介绍和下载链接汇总 | 小谢的小站
关键字: , ,

目前共有 2 条留言 【 访客:2 条, 博主:0 条 】 访客以 2:0 暂时领先博主!

  1. 板凳
    Ann:

    文章很到位,感谢分享

    2014-06-14 10:31
  2. 沙发
    hupo:

    作者介绍的很详细

    2014-06-27 08:42

发表评论

:wink: :neutral: :mad: :twisted: :smile: :shock: :sad: :roll: :oops: :eek: :mrgreen: :lol: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

快捷键:Ctrl+Enter