c++ - 找不到导入的项目 "C:\Microsoft.Cpp.Redirect.14.props"

标签 c++ visual-studio

我正在编辑一个 .vcxproj 文件,同时将它从 VS2012 转换为 VS2017,现在该项目不会在 VS2017 中加载。这是错误消息:

无法读取项目文件“Manager.vcxproj”。 C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.Cpp.Redirect.props(27,3): 导入项目“C:\Microsoft.Cpp.Redirect .14.props"未找到。确认声明中的路径正确,并且该文件存在于磁盘上。

我认为错误与项目文件中的这些行有关:

 <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>

但是,我的解决方案中的其他项目使用相同的导入路径并且仍然正确加载。这些线是导致问题的原因吗?如果是这样,正确的路径是什么?为什么我的其他项目在使用此路径时可以正常工作?

最佳答案

可以通过在“Globals”PropertyGroup 关闭后添加以下代码段来修复错误:

<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />

虽然项目可以在没有此行的情况下在 VS2012 中加载,但在 VS2017 中则不会。

关于c++ - 找不到导入的项目 "C:\Microsoft.Cpp.Redirect.14.props",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48936682/

相关文章:

c++ - 在 C++ 中实现心跳以检查套接字连接的最佳方法是什么?

visual-studio - 卸载 ReSharper 4.5

c++ - 如何找到 CL_DEVICE_MAX_WORK_GROUP_SIZE 的值

c++ - 将一堆数组压缩在一起 C++

c++ - 写出文件时出现奇怪的 glibc 错误

c# - 将不同的文件复制到输出目录以进行发布和调试?

c# - 在发布版本 (C#) 中如何停止对调试函数调用中的参数求值

c# - 使用记事本进行 ASP.NET MVC 开发?

c++ - 比较 C++ 的空指针值

c++ - 调用 reserve() 后 std::vector 的空间复杂度