<supportedRuntime> 項目

指定應用程式支援的通用語言執行平臺版本,以及選擇性地.NET Framework版本。

<configuration>
  <startup>
    <supportedRuntime>

Syntax

<supportedRuntime version="runtime version" sku="SKU ID"/>

屬性

屬性 描述
version 選擇性屬性。

字串值,用於指定這個應用程式支援的通用語言執行平台 (CLR) 版本。 如需 version 屬性的有效值,請參閱「runtime version」值一節。 注意:透過 .NET Framework 3.5,「執行時間版本」值會採用主要格式。minorbuild。 從 .NET Framework 4 開始,只有主要和次要版本號碼 (,也就是 「v4.0」 而不是 「v4.0.30319」) 。 建議使用較短的字串。
sku 選擇性屬性。

字串值,指定庫存單位 (SKU),進而指定哪些應用程式支援的.NET Framework 版本。

從 .NET Framework 4.0 開始,建議使用 sku 屬性。 該屬性存在時,會指出應用程式作為目標的 .NET Framework 版本。

如需 sku 屬性的有效值,請參閱「SKU ID」值一節。

備註

如果應用程式組態檔中沒有 <supportedRuntime> 項目,則會使用建置應用程式時使用的執行階段版本。

使用執行階段 1.1 版或更新版本所建置的所有應用程式,都應使用 <supportedRuntime> 元素。 若建置的應用程式只支援執行階段 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 > 元素存在於組態檔中,且已安裝的.NET Framework版本低於指定的支援版本,則應用程式無法執行,並改為顯示要求安裝支援版本的訊息。 <sku 否則,應用程式會嘗試在任何已安裝的版本上執行,但如果它與該版本不完全相容,可能會發生意外的行為。 (如需.NET Framework版本之間的相容性差異,請參閱 .NET Framework.) 中的應用程式相容性。因此,建議您在應用程式組態檔中包含這個專案,以便更輕鬆地進行錯誤診斷。 (建立新專案時,Visual Studio 自動產生的組態檔已包含。)

注意

如果您的應用程式使用舊版啟用路徑,例如CorBindToRuntimeEx 函式,而且您想要讓這些路徑啟動第 4 版 CLR 而不是舊版,或您的應用程式是以 .NET Framework 4 建置,但相依于使用舊版 .NET Framework建置的混合模式元件,則無法指定在支援的執行時間清單中.NET Framework 4。 此外,在組態檔的 <startup> 項目中,您必須將 useLegacyV2RuntimeActivationPolicy 屬性設定為 true。 不過,將此屬性設定為 true 表示使用舊版.NET Framework建置的所有元件都會使用 .NET Framework 4 來執行,而不是使用建置的執行時間。

建議您使用應用程式能夠執行的所有 .NET Framework 版本進行應用程式測試。

「執行階段版本」值

runtime 屬性會指定指定指定應用程式所需的 Common Language 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 會使用目標架構 Moniker (TFM) 來指出應用程式的目標.NET Framework版本,而且需要執行。 下表列出 屬性支援 sku 的有效值,從 .NET Framework 4 開始。

.NET Framework 版本 sku 屬性
4.0 ".NETFramework,Version=v4.0"
4.0,Client Profile ".NETFramework,Version=v4.0,Profile=Client"
4.0,平台更新 1 ".NETFramework,Version=v4.0.1」
4.0,Client Profile,更新 1 ".NETFramework,Version=v4.0.1,Profile=Client」
4.0,平台更新 2 ".NETFramework,Version=v4.0.2」
4.0,Client Profile,更新 2 ".NETFramework,Version=v4.0.2,Profile=Client」
4.0,平台更新 3 ".NETFramework,Version=v4.0.3」
4.0,Client Profile,更新 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」

範例

下列範例將示範如何在設定檔中指定支援的執行階段版本。 組態檔表示應用程式以 .NET Framework 4.7 為目標。

<configuration>
   <startup>
      <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7" />
   </startup>
</configuration>

組態檔

這個項目可以在應用程式組態檔中使用。

另請參閱