我将预建事件设置为:
$(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资源管理器中正常运行。
答案 0 :(得分:2)
TargetDir变量在您的案例中包含空格。你需要在命令周围加上引号:
"$(TargetDir)MyConsoleApp"
答案 1 :(得分:2)
不完全正确,我得到了同样的错误,我的参数之间没有一个空白字符。我相信Visual Studio只会被这些事情所困扰,并想知道为什么它在这方面没有得到改进。
无论如何,我通过创建批处理文件然后使用批处理文件位置参数从Post BUild事件调用该批处理文件来解决它:
MyPostBuildCommands.bat $(SolutionDir)$(ProjectDir)$(OutDir)