从批处理文件中的命令行参数返回退出代码

Posted

技术标签:

【中文标题】从批处理文件中的命令行参数返回退出代码【英文标题】:Return exit code from command line argument in batch file 【发布时间】:2012-10-04 14:38:29 【问题描述】:

我要做的是报告命令行参数的退出代码,并想知道这是否可能..

例如:

myProgram.exe aThirdPartyProgram.exe

并且我想获取在myProgram 中使用的aThirdPartyProgram 的退出代码。这样做的原因是创建一个批处理文件,可用于测试多个软件。

【问题讨论】:

【参考方案1】:

除非myProgram.exe 输出或返回与aThirdPartyProgram.exe 的退出代码有关的任何内容,否则没有办法。从您的批处理文件中,aThirdPartyProgram.exe 只是myProgram.exe 的一个参数;没有任何迹象表明它是一个将要执行的程序。此外,myProgram.exe 运行的是程序,而不是你的批处理,所以如果它没有告诉你它的退出代码,那么你就不走运了。

如果myProgram 只是传递aThirdPartyProgram 的退出代码,您可以使用包含最后一个命令的退出代码的伪变量%ERRORLEVEL%

【讨论】:

感谢您的快速响应乔伊,我会检查是否可以在 myProgram 中获取返回码,我想它可以,或者如果没有,它肯定有能力这样做,我想你的建议是将错误代码作为 myProgram 的错误代码(或有用的东西等!) @Sayse 在命令if /? 之后输入cmd.exe 并阅读ERRORLEVEL

以上是关于从批处理文件中的命令行参数返回退出代码的主要内容,如果未能解决你的问题,请参考以下文章

如何创建命令行参数

第五十二课命令行参数的应用

如何从正在处理的项目文件中访问 msbuild 命令行参数?

在 Windows 命令行中使用批处理文件中的参数

从带有命令行参数的批处理文件运行控制台应用程序,如何在运行时传递参数值? [复制]

第52课 命令行参数的应用