【问题标题】:Will .NET Framework 4 replace all its previous versions?.NET Framework 4 会取代所有以前的版本吗?
【发布时间】:2010-04-07 12:53:20
【问题描述】:

在近期安装 .NET Framework 4 时,我想知道这个产品是否会取代我之前安装的所有 .net 框架(即 1.1、2.0、3、3.5)。

如果是,我可以全部卸载吗?

【问题讨论】:

    标签: .net


    【解决方案1】:

    不,它们可以并存。就像以前的版本一样。 事实上,4.0 使用完全不同的目录来存储它的程序集。

    卸载将阻止您使用旧程序。然而,可以使用 4.0 运行时运行 2.0+ 软件,在应用程序配置文件中有一些 extra configuration。然而,这并不能保证有效,因为有一些细微的变化可能会破坏一些(可以说是编码错误的)软件。

    更新:有一个额外的属性会影响这个 (useLegacyV2RuntimeActivationPolicy),尽管我不完全确定它的作用。它取自 Bart de Smet 的演示文稿,在最初发布时我无法访问:

    <!-- Compiled for 2.0; run against 4.0 -->
    <configuration>
      <startup useLegacyV2RuntimeActivationPolicy=“true”>
        <supportedRuntime version=“v2.0.50727”/>
        <supportedRuntime version=“v4.0”/>
      </startup>
    </configuration>
    

    【讨论】:

      【解决方案2】:

      根据我自己的经验,你应该按照以下方式进行:

      要运行使用 1.0 和 1.1 版制作的 .NET 应用程序,您只需安装由 Microsoft 制作的最新更高版本 1.x 库版本(Microsoft .NET Framework 1.1 和 SP1 更新包)。

      要运行使用 2.0、3.0 和 3.5 版制作的 .NET 应用程序,您只需安装由 Microsoft 制作的最新更高版本 3.x 库版本(Microsoft .NET Framework 3.5 SP1)。

      要运行使用 4.0、4.5、4.5.1 和 4.5.2 版本制作的 .NET 应用程序,您只需安装由 Microsoft 制作的最新更高版本的 4.x 库版本(Microsoft .NET Framework 4.5.2,目前是任何 4.x 的最新库版本)。

      因此,目前,您只需在系统中安装这 3 个软件包(Microsoft .NET Framework 1.1、Microsoft .NET Framework 3.5 SP1 和 Microsoft .NET Framework 4.5.2)即可获得所有当前和旧版本.NET Frameworks 并且您可以运行任何 .NET 应用程序,而无需安装其他单独的包构建,例如 Microsoft .NET Framework 2.0、3.0、4.0 等,因为上面提到的包中已经包含。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-05-10
        • 1970-01-01
        • 1970-01-01
        • 2021-11-28
        • 2021-06-26
        • 2016-01-07
        • 2018-12-26
        相关资源
        最近更新 更多