强制关闭应用程序(.net)

时间:2008-10-28 10:13:36

标签: .net shutdown

我想强制我的应用程序关闭,并返回退出代码。看看MSDN,我可以看到在WPF中,Application有一个Shutdown方法,它将一个错误代码作为参数,但似乎没有一个用于System.Windows.Forms.Application。

我可以看到Application.Exit(),但不能回传错误代码。

如果有可能,有人知道吗?

由于

3 个答案:

答案 0 :(得分:13)

您可以使用System.Environment.Exit(yourExitCode)。

答案 1 :(得分:2)

在System.Environment类中设置ExitCode属性并在退出时。 e.g。

System.Environment.ExitCode = 1
Application.Exit()

答案 2 :(得分:2)

将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终止进程。