【发布时间】:2012-09-20 18:52:12
【问题描述】:
我正在编写一个 Visual Studio 2010 属性表来集成一个复杂的第 3 方 C++ 库。
要确定我需要链接到我的项目的库的哪些部分(以及配置各种定义、包含、目录等),我的属性表需要确定项目当前配置的 C 运行时库(即“MultiThreaded "、"MultiThreadedDebug"、"MultiThreadedDLL" 或 "MultiThreadedDebugDLL")。
但是,正如 stackoverflow 上的 substantially similar question 所指出的,此 MSBuild 条件不起作用:
Condition = " '$(RuntimeLibrary)' == 'MultiThreadedDLL' "
提供了另一个选项,但它是针对后续构建任务的。在构建之前我需要这个值。
我还搜索了 Google 和 Microsoft 的 MSDN 网站,寻找获得此价值的方法,但结果一无所获。有什么想法吗?
【问题讨论】:
-
改用
%(ClCompile.RuntimeLibrary)。 -
正如我所说,这是在我引用的其他 stackoverflow 解决方案中提供的。它适用于后续任务(例如在 *.target 文件中),但不适用于处理 *.prop 文件时。
标签: visual-studio-2010 msbuild propertysheet