Visual Build Professional(Pro,vbp)具有成功退出代码"我可以放入列入白名单的值...(当我定义一个外部.exe的调用时)
当我创建对外部.exe的调用时,如何捕获返回代码/退出代码并将其放入宏中?
基本上,我尝试在Visual Build Pro中进行操作,以下是msbuild的功能。
即,捕获" ExitCode"的值。到属性(用vbp语言编写的宏)...叫做MyExitErrorCode
<Target Name="ExecuteSomeEXETarget">
<Exec Command='"C:\Some.exe"' ContinueOnError='true'>
<Output TaskParameter="ExitCode" PropertyName="MyExitErrorCode"/>
</Exec>
<Message Text="The exit code is $(MyExitErrorCode)"/>
<Error Text="Error while executing Some EXE" Condition="'$(MyExitErrorCode)' > '0'" />
</Target>
答案 0 :(得分:0)
您可以执行“运行程序”
在“命令”中输入你的exe的路径。
在“更多”标签上,选择“继续构建”单选按钮。
...
然后你可以捕获宏%RUNPROGRAM_EXITCODE%
...
例如,在“运行程序”(步骤)之后,创建“日志消息”(步骤),并将其放入
Hello '%RUNPROGRAM_EXITCODE%' !
.......
不确定为什么宏不会出现在全局宏列表中。
现在我知道了神奇的宏名称,可以找到文档
http://www.kinook.com/VisBuildPro/Manual/index.htm?visualbuild5_x.htm
•“运行程序”操作的构建状态始终是BuildStatusEnum中的值,而不是进程的退出代码。退出代码在RUNPROGRAM_EXITCODE临时宏中可用。
http://www.kinook.com/VisBuildPro/Manual/index.htm?runprogramaction.htm
“运行程序”操作会创建一个步骤来启动任何外部应用程序,程序,批处理文件或命令脚本。 Visual Build启动并监视应用程序,捕获任何输出并将其记录到“输出”窗格(如果启用,则记录日志文件),并在构建停止时终止应用程序。
步骤完成后,将创建或更新以下临时宏: RUNPROGRAM_EXITCODE:如果选中Wait选项,则进程的退出代码将存储在此宏中。 RUNPROGRAM_PROCESSID:如果未选中“等待”选项,则已启动进程的进程ID将存储在此宏中。