/subsystemversion (C# 編譯器選項)
指定子系統的最小版本,而產生的可執行檔可在此子系統上執行,藉此判斷可執行檔可執行的 Windows 版本。 通常,這個選項可確保可執行檔可以支援舊版 Windows 中無法使用的特定安全性功能。
注意事項 |
---|
若要指定子系統本身,請使用 /target 編譯器選項。 |
/subsystemversion:major.minor
參數
major.minor
子系統的最小必要版本,用點標記法來表示主要和次要版本。 例如,如果您將這個選項的值設為 6.01,您可以指定應用程式無法在 Windows 7 之前的作業系統上執行,如本主題稍後的資料表所述。 您必須為 major 和 minor 的值指定為整數。minor 版本的前置的零不變更版本,但是結尾的零則會。 例如, 6.1 和 6.01 代表相同的版本,不過 6.10 卻表示不同的版本。 我們建議以兩位數來表示次要版本,以避免混淆。
備註
下表列出 Windows 通用子系統版本。
Windows 版本 |
子系統版本 |
---|---|
Windows 2000 |
5.00 |
Windows XP |
5.01 |
Windows Server 2003 |
5.02 |
Windows Vista |
6.00 |
Windows 7 |
6.01 |
Windows Server 2008 |
6.01 |
Windows 8 |
6.02 |
預設值
/subsystemversion 編譯器選項的預設值取決於下列清單中的條件:
預設值為 6.02的情況為任何編譯器選項的設定如下列清單所示:
如果您使用 MSBuild、針對 .NET Framework 4.5,以及尚未設定這個清單中先前指定的任何編譯器選項,預設值則為 6.00。
如果先前條件都不成立,則預設值為 4.00。
設定這個選項
若要在 Visual Studio 中設定 /subsystemversion 編譯器選項,您必須開啟 .csproj 檔案,並在 MSBuild XML為 SubsystemVersion 屬性指定值。 您無法在 Visual Studio IDE 中設定這個選項。 如需詳細資訊,請參閱本主題前面的<預設值>或一般 MSBuild 專案屬性。