指定应用程序支持的公共语言运行时版本以及 (可选).NET Framework 版本。
Syntax
<supportedRuntime version="runtime version" sku="SKU ID"/>
特性
| Attribute | Description |
|---|---|
| 版本 | 可选属性。 一个字符串值,该值指定此应用程序支持的公共语言运行时 (CLR) 的版本。 有关属性的有效值 version ,请参阅 “运行时版本”值 部分。
注意: 通过 .NET Framework 3.5,“运行时版本”值采用 主要格式。次要。build。 从 .NET Framework 4 开始,只需要主版本号和次要版本号(即“v4.0”而不是“v4.0.30319”)。 建议使用较短的字符串。 |
| sku | 可选属性。 一个字符串值,该值指定保留单位(SKU),后者又指定此应用程序支持的 .NET Framework 版本。 从 .NET Framework 4.0 开始,建议使用该 sku 属性。 存在时,它指示应用面向的 .NET Framework 版本。有关属性的有效值 sku ,请参阅 “SKU ID”值 部分。 |
注解
如果应用程序配置文件中不存在该 <supportedRuntime> 元素,则使用用于生成应用程序的运行时版本。
该 <supportedRuntime> 元素应由使用版本 1.1 或更高版本的运行时生成的所有应用程序使用。 仅支持运行时版本 1.0 的应用程序必须使用 <requiredRuntime> 元素。
注释
如果使用 CorBindToRuntimeByCfg 函数指定配置文件,则必须将 <requiredRuntime> 元素用于所有版本的运行时。 使用 CorBindToRuntimeByCfg 时,将忽略该<supportedRuntime>元素。
对于支持 .NET Framework 1.1 到 3.5 的运行时版本的应用,当支持多个版本的运行时时,第一个元素应指定运行时的最首选版本,最后一个元素应指定最低首选版本。 对于支持 .NET Framework 4.0 或更高版本的应用,该 version 属性指示 CLR 版本(与 .NET Framework 4 及更高版本通用),该 sku 属性指示应用面向的单个 .NET Framework 版本。
<supportedRuntime>如果配置文件中存在具有sku该属性的元素,并且已安装的 .NET Framework 版本低于指定的支持版本,则应用程序无法运行,而是显示一条消息,要求安装受支持的版本。 否则,应用程序会尝试在任何已安装的版本上运行,但如果它与该版本不完全兼容,它的行为可能会意外。 (有关 .NET Framework 版本之间的兼容性差异,请参阅 .NET Framework 中的应用程序兼容性。因此,建议将此元素包含在应用程序配置文件中,以便更轻松地进行错误诊断。 (创建新项目时 Visual Studio 自动生成的配置文件已包含该文件。
注释
如果应用程序使用旧激活路径(例如 CorBindToRuntimeEx 函数),并且希望这些路径激活 CLR 版本 4 而不是早期版本,或者应用程序是使用 .NET Framework 4 生成的,但依赖于使用早期版本的 .NET Framework 生成的混合模式程序集, 在支持的运行时列表中指定 .NET Framework 4 是不够的。 此外,在<startup>配置文件中的元素中,必须将属性设置为 useLegacyV2RuntimeActivationPolicytrue。 但是,将此属性设置为 true 表示使用 .NET Framework 4 的早期版本生成的所有组件都使用 .NET Framework 4 运行,而不是使用它们生成的运行时。
建议使用可运行的所有 .NET Framework 版本测试应用程序。
“运行时版本”值
该 runtime 属性指定给定应用程序所需的公共语言运行时 (CLR) 版本。 所有 .NET Framework v4.x 版本都指定 v4.0 CLR。 下表列出了属性的version运行时版本值的有效值。
| .NET Framework 版本 |
version 属性 |
|---|---|
| 1.0 | “v1.0.3705” |
| 1.1 | “v1.1.4322” |
| 2.0 | “v2.0.50727” |
| 3.0 | “v2.0.50727” |
| 3.5 | “v2.0.50727” |
| 4.0-4.8.1 | “v4.0” |
“SKU ID”值
该 sku 属性使用目标框架名字对象(TFM)来指示应用面向且需要运行的 .NET Framework 版本。 下表列出了从 .NET Framework 4 开始的属性支持 sku 的有效值。
| .NET Framework 版本 |
sku 属性 |
|---|---|
| 4.0 | ".NETFramework,Version=v4.0” |
| 4.0、客户端配置文件 | ".NETFramework,Version=v4.0,Profile=Client” |
| 4.0,平台更新 1 | ".NETFramework,Version=v4.0.1” |
| 4.0、客户端配置文件、更新 1 | ".NETFramework,Version=v4.0.1,Profile=Client” |
| 4.0,平台更新 2 | ".NETFramework,Version=v4.0.2” |
| 4.0、客户端配置文件、更新 2 | ".NETFramework,Version=v4.0.2,Profile=Client” |
| 4.0,平台更新 3 | ".NETFramework,Version=v4.0.3” |
| 4.0、客户端配置文件、更新 3 | ".NETFramework,Version=v4.0.3,Profile=Client” |
| 4.5 | ".NETFramework,Version=v4.5” |
| 4.5.1 | ".NETFramework,Version=v4.5.1” |
| 4.5.2 | ".NETFramework,Version=v4.5.2” |
| 4.6 | ".NETFramework,Version=v4.6” |
| 4.6.1 | ".NETFramework,Version=v4.6.1” |
| 4.6.2 | ".NETFramework,Version=v4.6.2” |
| 4.7 | ".NETFramework,Version=v4.7” |
| 4.7.1 | ".NETFramework,Version=v4.7.1” |
| 4.7.2 | ".NETFramework,Version=v4.7.2” |
| 4.8 | ".NETFramework,Version=v4.8” |
| 4.8.1 | ".NETFramework,Version=v4.8.1” |
Example
以下示例演示如何在配置文件中指定支持的运行时版本。 配置文件指示应用面向 .NET Framework 4.7。
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7" />
</startup>
</configuration>
配置文件
此元素可在应用程序配置文件中使用。