预构建事件失败

时间:2010-08-31 22:57:53

标签: visual-studio macros prebuild

我将预建事件设置为:

$(TargetDir)MyConsoleApp

但是当我运行应用程序时,我得到以下输出:

------ Build started: Project: BlahBlahBlah, Configuration: Debug x86 ------

'd:\users\user\documents\visual' is not recognized as an internal or external 
command, operable program or batch file.

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(902,9):
error MSB3073: The command "d:\users\user\documents\visual studio 2010\Projects\
BlahBlahBlah\BlahBlahBlah\bin\Debug\MyConsoleApp" exited with code 9009.

========== Build: 0 succeeded, 1 failed, 1 up-to-date, 0 skipped ==========

指定目标DOES上的文件MyConsoleApp存在并从Windows资源管理器中正常运行。

2 个答案:

答案 0 :(得分:2)

TargetDir变量在您的案例中包含空格。你需要在命令周围加上引号:

"$(TargetDir)MyConsoleApp"

答案 1 :(得分:2)

不完全正确,我得到了同样的错误,我的参数之间没有一个空白字符。我相信Visual Studio只会被这些事情所困扰,并想知道为什么它在这方面没有得到改进。

无论如何,我通过创建批处理文件然后使用批处理文件位置参数从Post BUild事件调用该批处理文件来解决它:

MyPostBuildCommands.bat $(SolutionDir)$(ProjectDir)$(OutDir)