c++ - 使用平台工具集 v100 的 Visual Studio 2012。无法打开源文件 "atlbase.h"

标签 c++ visual-studio-2010 visual-studio visual-studio-2012 atl

我正在使用 Visual Studio Ultimate 2012。我有一个项目,当我使用默认的 v110 平台工具集时可以正常工作。

现在我想将点云库(PCL)添加到该项目中以进一步开展工作。不幸的是,只有 Visual Studio 2010 可用的二进制文件。我首先尝试自己编译 2012 年的二进制文件,但事实证明这比它的值(value)更麻烦。因此,我将平台工具集更改为 v100,以便使用 PCL 预构建的二进制文件。

但是,这样做时,我的包含文件之一(atlbase.h)不再被识别。我尝试通过在项目属性中添加 ATL 的包含和库目录来手动包含此内容。这产生了很多新的错误,这些错误源自 atl 头文件,这看起来很奇怪。我还尝试将选项“使用 ATL”从默认的“不使用 ATL”更改为“动态链接到 ATL”和“静态链接到 ATL”,但没有效果。

我正在 64 位 Windows 7 Ultimate 计算机上工作,并希望在 32 位中进行编译。

编辑:使用 Process Monitor我发现 Visual Studio 正在 C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\atlmfc\include\atlbase.h 中查找包含文件。 此文件夹 (..\atlmfc) 不存在。 我的VS2012安装在D:\School Programs\Visual Studio 2012

有解决办法吗?

最佳答案

  1. 当您切换到另一个不同的工具集时,这个完整的工具集必须可用。这还包括头文件。
  2. 应该可以轻松地将这个 DLL 转换为 VS 2012。或者,您可以包含完整的源代码,而无需使用单独的 DLL。

关于c++ - 使用平台工具集 v100 的 Visual Studio 2012。无法打开源文件 "atlbase.h",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22752910/

相关文章:

c++ - 在 python 中嵌入 c++ 代码会让你的 python 应用程序更快吗?

c++ - 嵌套在函数中的函数声明的命名空间

c++ - VC++ 2010 IntelliSense 自动完成列表消失得太快

c++ - Cloud_viewer示例错误

c++ - Windows XP上的“is not a valid win32 application”

c++ - std::vector 的后代是否可以合并和排序?

C++ 奇怪的模板/命名空间行为

c# - 如何在 C# 中将 nchar 转换为字符串?

c++ - Visual Studio 2012 __cplusplus 和 C++ 11

javascript - 使用 Apache Cordova 时无法在 Visual Studio 2017 中构建应用程序