在.NET中,如何指定控制台应用程序的退出代码?

563

我有一个简单的.NET控制台应用程序,它只是一个较大应用程序的测试部分。我想指定控制台应用程序的“退出代码”。我该如何做?

14个回答

4
您可以在系统错误代码(0-499)页面找到系统错误代码。
例如,代码2表示“文件未找到”,代码5表示“拒绝访问”。
当您遇到未知代码时,可以使用以下命令查找其含义:
net helpmsg decimal_code

例如,
net helpmsg 1

返回值

Incorrect function

1
使用这段代码。
Environment.Exit(0);

如果您不想返回任何内容,请将int设为0。


1
这并没有回答楼主的问题,而返回0是在返回某些东西... - P-L
1
它返回的是应用程序通常返回的内容。如果您没有指定,应用程序将返回0。 - John Lord

0
我是这样做的:
int exitCode = 0;
Environment.Exit(exitCode);

或者你可以抛出一个错误(个人偏好):

throw new ArgumentException("Code 0, Environment Exit");

我选择了ArgumentException,但你可以输入其他的。它也能正常工作。


那甚至都无法编译 - Environment 拼写错误为 Enviroment - Peter Mortensen
当异常被抛出时会发生什么(假设在控制台应用程序中没有任何地方捕获)?结果的退出代码是什么(问题是“如何在.NET中指定控制台应用程序的退出代码?”)?您能提供一个实际编译的工作示例吗?您能通过文档引用支持它吗?请通过编辑(更改)您的答案来回复,而不是在此处评论(不要添加“编辑:”,“更新:”或类似内容 - 答案应该看起来像是今天写的)。 - Peter Mortensen

-3

另一种方式:

public static class ApplicationExitCodes
{
    public static readonly int Failure = 1;
    public static readonly int Success = 0;
}

这怎么回答问题了呢?这是对另一个答案的回应吗,比如Mark Brackett的答案 - Peter Mortensen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接