Visual Studio预构建事件;检查每个事件的退出代码

Mik*_*erk 5 events exit-code visual-studio pre-build-event

我有多个项目的解决方案。仅当两个事件在预构建事件中都退出且错误代码为0时,才需要构建一个项目。

所以我认为我可以做以下事情:

“ C:\ Path \ To \ Binary1.exe”和“ C:\ path \ to \ binary2.exe”

在我的测试方案中,出现了问题,因此Binary1.exe退出并带有非零值。但是Visual Studio还是继续构建项目。当我在cmd中运行构建前事件命令行并回显%errorlevel%时,我看到退出代码为非零。

当我只放

“ C:\ Path \ To \ Binary1.exe”

在预构建事件中,构建停止,并且在Error ListVisual Studio窗口中显示错误。

我可以肯定Binary1.exe会以非零值退出,因为它在退出前还会显示一个消息框。

我可以想到一种解决方案。Binary1.exe调用Binary2.exe并以非零退出代码退出,而Binary2.exe以非零退出代码退出。但这并不是一个灵活的解决方案。

总结一下: 当其中一个命令返回非零值时,如何运行多个预构建事件并停止构建?

小智 2

如果两个项目在同一个解决方案中,可以在Visual Studio中设置依赖关系。右键单击解决方案资源管理器中的解决方案,然后选择“项目依赖项”。

将“最后一个”项目设置为取决于前两个项目。在这种情况下,Visual Studio 将以正确的顺序构建,并且如果依赖项之一无法构建,则将停止构建。(视觉工作室 2013)