共用方式為


以多個架構版本和平台為目標

藉由使用 MSBuild,您可以編譯應用程式,以在數個 .NET Framework 的任何一個版本,以及其中一個系統平台上執行。 例如,您可以編譯應用程式以在32位平臺上的 .NET Framework 2.0 上執行,並編譯相同的應用程式,以在64位平臺上的 .NET Framework 4.5 上執行。

注意

本文說明適用於 .NET Framework 組建的舊版多重目標類型,其中專案一次只能以一個架構和一個平臺為目標。 在 .NET Core 和 .NET 5 以及更高版本中,您可以在專案檔中使用 TargetFrameworks(plural)屬性來運行更新的多重目標類型。 當您使用 dotnet build 或類似的 .NET CLI 命令進行建置,或在重載項目之後使用Visual Studio 建置時,您的組建會使用較新的多重目標類型,其中會針對列出的每個目標架構執行一次多個組建。 請參閱 目標架構

以下是以 MSBuild 為目標的一些功能:

  • 您可以開發以舊版 .NET Framework 為目標的應用程式,例如 2.0、3.5 或 4 版。

  • 您可以以 .NET Framework 以外的架構為目標,例如 Silverlight Framework。

  • 您可以將目標設為 架構配置檔,這是目標架構的預先定義子集。

  • 如果針對目前版本的 .NET Framework 發行更新包,您可以鎖定它。

  • MSBuild 目標化可確保應用程式只使用目標架構和平臺中可用的功能。

目標架構和平臺

目標架構 是專案建置用來執行之 .NET Framework 的版本,而 目標平臺 是專案建置用來執行的系統平臺。 例如,您可能想要以 .NET Framework 2.0 應用程式為目標,在與 80x86 處理器系列 (x86) 相容的 32 位平台上執行。 目標架構和目標平台的組合稱為 目標內容。 如需詳細資訊,請參閱 目標架構和目標平臺

工具集(ToolsVersion)

工具組會收集用來建立應用程式的工具、工作和目標。 工具組包含編譯程式,例如 csc.exevbc.exe、通用目標檔案(microsoft.common.targets),以及一般工作檔案(microsoft.common.tasks)。 4.5 工具組可用來以 .NET Framework 2.0、3.0、3.5、4 和 4.5 版為目標。 不過,2.0 工具組只能用來以 .NET Framework 2.0 版為目標。 如需詳細資訊,請參閱 工具組 (ToolsVersion)

參考元件

工具組中指定的參考元件可協助您設計和建置應用程式。 這些參考元件不僅能啟用特定的目標組建,也會將Visual Studio IDE中的元件和功能限制為與目標相容的元件和功能。 如需詳細資訊,請於設計階段解析元件,請參閱

設定目標和工作

您可以設定 MSBuild 目標和任務,使其獨立於進程運行,從而能夠針對與當前運行環境顯著不同的上下文。 例如,您可以在開發計算機使用 .NET Framework 4.5 的 64 位平台上執行時,以 32 位 .NET Framework 2.0 應用程式為目標。 如需詳細資訊,請參閱 設定目標與工作

故障排除

如果您嘗試參考不屬於目標內容的元件,可能會發生錯誤。 如需了解這些錯誤以及如何處理它們的詳細資訊,請參閱 疑難排解 .NET Framework 目標設定錯誤