我希望强制我的应用程序关闭,并返回一个退出代码。查看 MSDN,我可以看到在 WPF 中,应用程序有一个 Shutdown 方法,该方法将错误代码作为参数,但 System.Windows.Forms.Application 似乎没有。
我可以看到 Application.Exit() 但不是传回错误代码的方法。
有没有人知道这是否可能?
谢谢
您可以使用 System.Environment.Exit(yourExitCode)。
在 System.Environment 类和退出时设置 ExitCode 属性。例如
System.Environment.ExitCode = 1
Application.Exit()
将 ExitCode 属性(或类似的东西)添加到您的表单类:
class MyForm : Form {
public int ExitCode { get; set; }
void ShutDownWithError(int code) {
ExitCode = code;
Close();
}
}
在您的代码中的某处,您有:
static void Main() {
// ...
MyForm form = new MyForm();
Application.Run(myForm);
}
将其更改为:
static void Main() {
// ...
MyForm myForm = new MyForm();
Application.Run(myForm);
Environment.Exit(myForm.ExitCode);
}
当在表单上调用 ShutdownWithError 方法时,您将关闭主表单。这将跳出以 Application.Run 开始的循环。然后,您只需获取退出代码并使用 Environment.Exit 终止该进程。