2014-11-05 65 views
9

在Visual Studio 2013中,我有一個特殊的項目,在生成後事件中,我試圖將$(TargetDir)傳遞給批處理文件。Visual Studio 2013後生成事件宏是空的

問題是,所有的宏都是空的,除了在「解決方案」中開始的宏。另外,所有的宏都在「編輯生成後事件命令行」對話框中正確顯示。

echo ConfigurationName is "$(ConfigurationName)" 

結果

Configuration name is "" 

回答

10

我有同樣的問題。 根據https://social.msdn.microsoft.com/Forums/vstudio/en-US/179716e8-89eb-40ff-ba13-339e2d25d1c8/outdir-and-targetpath-macros-are-empty?forum=msbuild,您必須刪除csproj文件中的ProperyGroupd,然後再次在Visual Studio中添加生成事件。 enter image description here

再次添加它後,它將在csproj文件的末尾,並且宏應該工作。

+0

我在VS2015中發現了同樣的問題 – Andy 2017-01-13 18:50:30

+0

我有同樣的問題。我已經在csproj文件中手動添加了PropertyGroup。我不得不刪除它,並從項目屬性>構建事件選項卡再次添加它,並開始工作。謝謝你節省我的時間。 – Alpesh 2017-08-18 12:18:59

3

嘗試$(配置),而不是$(ConfigurationMode),我是有過這個問題,這解決了它,雖然我不知道爲什麼會發生...

0

我想我明白了。這似乎發生在我打開多個VS實例時。嘗試關閉所有實例或VS並啓動一個。

相關問題