簡體   English   中英

什么是 Visual Studio 項目中的“平台工具集”設置

[英]What is "Platform Toolset" setting in visual studio project

我有三個疑問。 有人幫忙嗎?

  1. VS項目中的“平台工具集”項目設置是什么
  2. 為什么需要這樣的設置
  3. 如果我更改設置會發生什么(v110 到 v100)

它是一個 MSBuild 屬性,用於控制要使用的平台工具集的特定版本。

更多信息在這里:http: //msdn.microsoft.com/en-us/library/windows/hardware/hh454232%28v=vs.85%29.aspx

您很可能希望使用最新的穩定 Windows SDK。 您可以檢查您正在使用的工具集,查看您的 Visual Studio 項目文件 (.vcxproj),查找此 XML 條目:

<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"
      Label="Configuration">
  <ConfigurationType>Driver</ConfigurationType>
  <DriverType>KMDF</DriverType>
  <PlatformToolset>WindowsKernelModeDriver8.1</PlatformToolset>
</PropertyGroup>

它是用於編譯和鏈接項目的所有工具的版本。

更何況它是用於構建項目的工具鏈版本。 因此,取決於您選擇的版本,使用不同的編譯器、鏈接器(等)版本。 如果您選擇隨 VS2017 (v141) 發布的工具集版本,MSBuild 將使用此工具集中的工具來構建您的項目。

它在以下提供的鏈接中得到了很好的描述:YoavKlein。 “平台工具集由 C++ 編譯器 (cl.exe) 和鏈接器 (link.exe) 以及 C/C++ 標准庫組成。自 Visual Studio 2015 以來,工具集的主要版本保持在 14,這意味着使用 Visual Studio 2019 或 Visual Studio 2017 編譯的項目與使用 Visual Studio 2015 編譯的項目向后兼容 ABI。自 Visual Studio 2015 以來,每個版本的次要版本都更新了 1:Visual Studio 2015:v140 Visual Studio 2017:v141 Visual工作室 2019:v142"

因此,如果主要版本相同,ABI 沒有區別(但在您的情況下,您詢問從 v110 到 v100 的更改,因此兼容性可能會被破壞),但可能會發生舊版本工具集提供的 fe 編譯器沒有實現新的或即將到來的 c++ 標准等的一些特性。

  1. 在 Visual Studio 的解決方案資源管理器中,打開項目的快捷菜單(而不是解決方案),然后選擇“屬性”以打開項目的“屬性頁”對話框。

  2. 在“屬性頁”對話框中,打開“配置”下拉列表,然后選擇“所有配置”。

  3. 在對話框的左窗格中,展開配置屬性,然后選擇常規。

  4. 在右側窗格中,選擇平台工具集,然后從下拉列表中選擇所需的工具集。 例如,如果您已安裝 Visual Studio 2010 工具集,請選擇 Visual Studio 2010 (v100) 以將其用於您的項目。

  5. 選擇確定按鈕。

PlatformToolset 與 Visual Studio 版本的對應關系如下

  • 視覺工作室 2012:v110
  • 視覺工作室 2013:v120
  • 視覺工作室 2015:v140
  • 視覺工作室 2017:v141
  • 視覺工作室 2019:v142
  • Visual Studio 2022:v143

(跳過 v130)

摘自

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM