18

在 Visual Studio 2013(或 2015)中,我有一个特定项目,在构建后事件中,我试图将 $(TargetDir) 传递给批处理文件。

问题是,所有的宏都是空的,除了以“解决方案”开头的宏。此外,所有宏都正确显示在“编辑构建后事件命令行”对话框中。

例子

echo ConfigurationName is "$(ConfigurationName)"

结果是

Configuration name is ""
4

3 回答 3

27

我有同样的问题。根据https://social.msdn.microsoft.com/Forums/vstudio/en-US/179716e8-89eb-40ff-ba13-339e2d25d1c8/outdir-and-targetpath-macros-are-empty?forum=msbuild _删除PropertyGroupcsproj 文件中的 ,然后再次在 Visual Studio 中添加构建事件。 在此处输入图像描述

再次添加后,它将位于 csproj 文件的末尾,并且宏应该可以工作。

于 2015-06-03T06:14:27.613 回答
3

尝试 $(Configuration) 而不是 $(ConfigurationMode),我也遇到了这个问题,这解决了它,虽然我不知道它为什么会发生......

于 2015-03-04T15:24:12.767 回答
0

我想我想通了。当我打开多个 VS 实例时,这似乎会发生。尝试关闭所有实例或 VS 并启动一个。

于 2017-07-20T18:49:36.990 回答