如何:使用应用程序配置文件指定 .NET Framework 的版本

更新:2007 年 11 月

您可以使用应用程序配置文件来指定应用程序或组件所支持的 .NET Framework 版本。当您在应用程序配置文件中使用 <supportedRuntime> 元素<requiredRuntime> 元素 时,必须指定每个受支持的 .NET Framework 版本的版本号和内部版本号。

应用程序在其上运行的 .NET Framework 的版本的确定方式如下:

  • 如果计算机上存在应用程序生成所针对的 .NET Framework 版本,则应用程序在该版本上运行。

  • 如果应用程序生成所针对的 .NET Framework 版本不存在,并且配置文件未在 <supportedRuntime> 元素 中指定版本,则应用程序在计算机上存在的最新版本的 .NET Framework 上运行。

  • 如果应用程序生成所针对的 .NET Framework 不存在,并且配置文件在 <supportedRuntime> 元素 中指定了版本,则应用程序在应用程序配置文件中指定并在计算机上存在的最新版本上运行。

9w519wzk.alert_note(zh-cn,VS.90).gif说明:

应用程序配置文件必须与应用程序同名,扩展名为 .config。例如,对于名称为 MyExecutable.exe 的应用程序,应用程序配置文件的名称必须是 MyExecutable.exe.config。

可以配置应用程序在用于创建它的版本上或更高版本上运行。例如,可以将用 .NET Framework 1.0 版创建的应用程序确定为在 1.0 版、1.1 版、2.0 版或所有这三个版本上运行。只能将用 .NET Framework 2.0 版创建的应用程序确定为在 2.0 版上运行。

确定为在 .NET Framework 1.1 版上运行

本节所显示的应用程序配置文件项确定使用 .NET Framework 1.0 生成的应用程序在以下情况下将使用 .NET Framework 1.1 版:

  • 如果安装了 .NET Framework 1.1 版。

  • 如果安装了 .NET Framework 1.0 版和 .NET Framework 1.1 版。

如果只安装了 1.0 版,则应用程序将运行(因为 1.0 版无法识别 <supportedRuntime> 元素),并将使用 PE 文件头中指向 1.0 版的版本。

在下图中,MyApp 和程序集 A 存在对 .NET Framework 1.0 版的静态引用,而程序集 B 存在对 .NET Framework 1.1 版的静态引用。在此示例中,MyApp 的应用程序配置文件指出,该应用程序支持 1.1 版,所以,该应用程序和程序集 A 被重定向为使用 .NET Framework 1.1 版。

将程序集绑定重定向到 1.1 版的应用程序配置文件
带有程序集 A 和程序集 B 的 MyApp 示例

将用 .NET Framework 1.0 版生成的应用程序确定为在 .NET Framework 1.1 版上运行

  • 在应用程序配置文件中输入以下 XML:

    <?xml version ="1.0"?>
    <configuration>
      <startup>
        <supportedRuntime version="v1.1.4322" /> 
      </startup>
    </configuration> 
    

请参见

概念

配置程序集绑定重定向

查找运行库版本信息

其他资源

并行 (Side-by-Side) 执行