从命令窗口中的Windows窗体应用程序获取退出代码

时间:2009-01-21 13:09:51

标签: c# winforms command-line exit-code

我从命令promt启动Windows窗体应用程序,我需要获取windows窗体应用程序生成的退出代码。命令promt启动应用程序并立即返回。但是应用程序在后台执行。有没有办法获得退出代码?

亲切的问候

基督教。

2 个答案:

答案 0 :(得分:9)

答案是

start /wait [Your Command]

然后

echo %errorlevel%

提取返回值。

-

因为我喜欢编写批处理文件......(这是我的一个问题......)

@echo off
echo Waiting for program to exit...
start /wait %*
echo Return code was %errorlevel%

将其保存在扩展名为.bat的地方。使用要运行的程序的命令行作为参数运行它。它将运行您给出的命令,等待它结束,然后打印返回值。

你也可以通过用你的应用替换开始/等待行来对程序进行硬编码,因为文档(start /?)说:

  

执行32位GUI应用程序的应用程序时,CMD.EXE       在返回之前不会等待应用程序终止       命令提示符。如果执行,则不会发生此新行为       在命令脚本中。

如果从脚本调用CMD,无论是否启用了命令扩展,CMD都会等待winform。

答案 1 :(得分:0)

有关使用ERRORLEVEL指令的详细信息,请参阅this article by Rob van der Woude