MSBuild C ++:配置TLB查找路径

时间:2016-12-21 12:57:45

标签: c++ visual-c++ com msbuild

问题:
COM插件到应用程序,在C ++中。使用应用程序提供的一组TLB来访问所有需要的接口。 TLB通过#import引用,并驻留在repository的子目录中。最终目标是在没有主机应用程序的情况下编译插件。但Visual C ++编译器不希望在与导入的初始TLB相同的文件夹中搜索可传递引用的TLB - 由于这个原因:https://msdn.microsoft.com/en-us/library/8etzzkb6.aspx#Anchor_2

我不想添加配置PATH然后打开解决方案的特殊批处理。

我考虑将代理标头添加到TLBs文件夹作为最后的解决方法。

问题: 是否有某种方法可以指示MSBuild,以便在运行C ++编译器时(最好)或在打开解决方案期间修改PATH(更糟糕但可以接受)?

由于

1 个答案:

答案 0 :(得分:0)

似乎整个问题可以通过三个特定的调整来解决:

  1. 在依赖导入的TLB之前导入传递导入的TLB
  2. 使用双引号括起TLB名称(扩展查找规则)
  3. 使用no_registry属性,这似乎可以确保在磁盘上查找传递依赖项。