gpt4 book ai didi

c++ - 如何设置默认Windows工具包(SDK)版本?

转载 作者:行者123 更新时间:2023-12-01 12:34:19 25 4
gpt4 key购买 nike

我曾经将Windows 8.1 SDK用于我的C++应用程序,并且一切正常。今天,我安装了Windows 10 SDK,但找不到使它成为默认值的方法。

我可以在Visual Studio项目设置中对新的SDK路径进行硬编码,但这是非常不可取的。我希望每个新项目都默认使用新工具包。
SDK没有环境变量,我也无法在注册表中找到任何内容。
更准确地说,注册表中有Windows SDK条目,但我需要的-C++包括的库-被称为Windows Kit(位于C:\Program Files(x86)\Windows Kits中)。

最佳答案

好的,似乎没有很多人面临此问题,但是我仍然会发布一种变通方法来设置默认的sdk版本。它与Visual Studio 2017社区一起使用。
请考虑以下情况:

  • 您已经有了一些项目的解决方案,您不能重新定位
  • 您之前在计算机上安装了较旧的VS
  • 打开解决方案时,由于某种原因,VS在使用Windows SDK 10时将SDK版本设置为8.1。
  • 尝试构建时,您具有以下内容:

  • Error MSB8036 The Windows SDK version 8.1 was not found. Install therequired version of Windows SDK or change the SDK version in theproject property pages or by right-clicking the solution and selecting"Retarget solution".


    因为SDK 8.1没有在您的PC上正确安装,并且以某种方式重新安装它不能解决问题。
  • 团队中的其他人没有问题,因为项目没有在* .vcxproj文件中明确定义Windows SDK版本。

  • 因此,显然,安装了多个SDK的MS构建系统有些困惑,最糟糕的部分是它导致将错误安装的SDK定义为默认设置。
    我使用以下变通办法来显式设置默认的Windows SDK:
  • 转到 [VS安装路径]\Common7\IDE\VC\VCTargets
    ,例如:

  • C:\Program Files (x86)\Microsoft VisualStudio\2017\WDExpress\Common7\IDE\VC\VCTargets\Microsoft.Cpp.WindowsSDK.props)


  • 以管理员身份打开文件 Microsoft.Cpp.WindowsSDK.props
  • 查找行
  •     <DefaultWindowsSDKVersion Condition="'$(DefaultWindowsSDKVersion)' == ''
    and '$(AppContainerApplication)' != 'true'">8.1</DefaultWindowsSDKVersion>
    将8.1更改为您确定已正确安装的SDK版本,然后保存文件。
    在我的情况下是10.0.17763.0,所以最后一行是
        <DefaultWindowsSDKVersion Condition="'$(DefaultWindowsSDKVersion)' == ''
    and '$(AppContainerApplication)' != 'true'">10.0.17763.0</DefaultWindowsSDKVersion>
    现在,重新打开您的解决方案并尝试构建它。应该工作正常。

    关于c++ - 如何设置默认Windows工具包(SDK)版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34631913/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com