【问题标题】:Using header files with multiple projects in same solution在同一解决方案中使用具有多个项目的头文件
【发布时间】:2016-07-26 16:12:41
【问题描述】:

我正在使用 C++ 和 Visual Studio 2015。我在 1 个解决方案中创建了 2 个项目。第一个项目是一个静态库,另一个是 DLL。我想从静态库中包含一个头文件以在 DLL 中使用它。我尝试使用 - Project->Properties->C/C++ -> General -> Additional include 目录指定头文件的路径,但它不起作用。当我尝试包含头文件时,我得到一条红色下划线,上面写着“无法打开源文件”SomeHeaderFile.h”。

感谢您的帮助。

【问题讨论】:

  • 这应该可以。您是否收到编译器错误?
  • 确保编辑 DLL 项目(使用您提到的方法),并确保您输入的路径是头文件(其父目录)的正确路径。如果满足这两个要求,它应该编译。可能您必须对链接器执行相同的操作。详情查看this answer(指OpenSSL,但原理相同)。
  • 在项目属性对话框中,确保在正确的构建配置中修改包含目录。如果您编辑 Release 配置,但使用 Debug 配置构建,它可能具有您所描述的行为。

标签: c++ header solution projects


【解决方案1】:

感谢您的提示,但我发现了如何让它发挥作用。 DLL 在一个额外的文件夹中。我所要做的就是#include "../../TheHeaderFileThatISpentHoursTryingToGet.h"。我删除了附加包含目录路径中的引用,它仍然有效。我一直认为,在所有项目中都可以访问同一解决方案中不同项目的文件是有意义的。再次感谢。

【讨论】:

    猜你喜欢
    • 2019-07-07
    • 1970-01-01
    • 2011-02-26
    • 1970-01-01
    • 1970-01-01
    • 2018-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多