Mor*_*hai 6 c++ projects-and-solutions include-path visual-studio-2017
所以我总是不得不使用项目的“附加包含目录”属性来设置我依赖于给定解决方案的其他(库)项目的相对路径。
所以解决方案结构本质上是:
我的 App.sln
-> 我的 App.vcxproj
-> 我的 Lib.vcxproj
我想要的是让我的应用程序项目自动将我的 Lib 项目文件的路径添加为它的“附加包含目录”中的条目,因为我的应用程序依赖于我的 Lib。
我通过在我的应用程序的“引用”下添加它来设置库/链接依赖项,这很好地意味着我的应用程序将自动链接到我的 Lib 的输出 .lib。完美的!
但是......我不知道如何从 My Lib 中获取 .h 文件以包含到我的应用程序中,而无需手动指定其路径(或相对路径)到我的应用程序项目的“附加包含目录”属性。
我已经忍受了很多年,但我不得不解决依赖依赖的链接问题,并找到了一种非常巧妙的方法来做到这一点,而无需接触项目设置。
这让我想到 - 当然有一种方法可以为“项目 A 依赖于项目 B,因此应该自动搜索项目 B 以获取 #include 引用”
我是一厢情愿的想法吗?还是我在 VS 中缺少一些很棒的功能?
小智 1
这可以通过物业经理来完成。这里有一篇文章详细描述了该过程:使用属性文件管理 Visual Studio C++ 项目中的依赖关系。
简而言之:您为库项目创建一个自定义属性表,在其中添加其包含目录。(确保使用适用于您的应用程序项目的路径)。然后,您从应用程序项目中引用该属性表。
一旦完成该设置,您就可以对属性表进行修改,它将自动更新引用这些属性的所有项目。
您可以在“视图”->“其他窗口”下找到“属性管理器”。
这是完整的设置。请注意MyLibIncludes左下角的属性表,并注意它MyLibIncludes引用自MyApp:

MyLibIncludes添加了包含文件夹后,属性表如下所示MyLib:

如果我们查看MyApp的属性,您会发现包含目录已MyLib通过继承自动添加,因为我们引用了MyLib的属性表MyApp:

| 归档时间: |
|
| 查看次数: |
1038 次 |
| 最近记录: |