7

アプリケーションを強制的にシャットダウンし、終了コードを返したいと考えています。MSDN を調べたところ、WPF にはアプリケーションにパラメーターとしてエラー コードを受け取る Shutdown メソッドがあることがわかりましたが、System.Windows.Forms.Application にはないようです。

Application.Exit() は表示されますが、エラー コードを返す方法はありません。

これが可能かどうかは誰にもわかりませんか?

ありがとう

4

3 に答える 3

13

System.Environment.Exit(yourExitCode) を使用できます。

于 2008-10-28T10:16:08.613 に答える
2

System.Environment クラスと終了時に ExitCode プロパティを設定します。例えば

System.Environment.ExitCode = 1
Application.Exit()
于 2008-10-28T10:17:23.743 に答える
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 でプロセスを強制終了します。

于 2008-10-28T10:24:50.390 に答える