|   | 
| 
 .NET TIPS 
コンソール・アプリケーションを途中で終了するには?
デジタルアドバンテージ 
2004/06/11 | 
  | 
 
 | 
  C#やVisual Basic .NET(以下VB.NET)で作成したアプリケーションは、エントリ・ポイントであるMainメソッドが終了すれば、アプリケーションも終了する。しかし、例えば致命的なエラーが発生したような場合などでは、Mainメソッド以外のメソッド内でもアプリケーションを終了させるようなコードを記述した方が、プログラムがすっきりする場合がある。
 このような用途のために、VB.NETにはEndステートメントが用意されているが、C#でアプリケーションの実行を途中で終了するには、Environmentクラス(System名前空間)のExitメソッドを使用する必要がある。
 以下にExitメソッドを使用したC#のサンプル・プログラムを示す。
// exitapp.cs 
 
using System; 
 
public class ExitByEnvironment { 
  static void Foo() { 
    Environment.Exit(0); 
  } 
 
  static void Main() { 
    Foo(); 
    Console.WriteLine("ここは実行されません"); 
  } 
} 
 
// コンパイル方法:csc exitapp.cs 
 | 
 
 
 | 
 
| Environment.Exitメソッドによりプログラムを終了するC#のサンプル・プログラム(exitapp.cs) | 
| 
 | 
 このサンプル・プログラムでは、Mainメソッドから呼び出しているFooメソッドでプログラムの実行は終了する。なお、Environment.Exitメソッドのパラメータには、Windows OSに返す終了コードを指定できる(これについては「TIPS:コンソール・アプリケーションで終了コードを返すには?」を参照)。
 もちろん、Environment.ExitメソッドはVB.NETでも使用できる。
' exitapp.vb 
 
Imports System 
 
Module Module1 
  Sub Foo() 
    Environment.Exit(0) 
  End Sub 
 
  Sub Main() 
    Foo() 
    Console.WriteLine("ここは実行されません") 
  End Sub 
End Module 
 
' コンパイル方法:vbc exitapp.vb 
 | 
 
 
 | 
 
| Environment.Exitメソッドによりプログラムを終了するVB.NETのサンプル・プログラム(exitapp.vb) | 
| 
 | 
 ちなみに、Windowsアプリケーションを終了させるには、通常Applicationクラス(System.Windows.Forms名前空間)のExitメソッドを呼び出すが、これは同クラスのRunメソッドから制御を取り戻す(内部で実行されているメッセージ・ループを終了させる)ためのもので、アプリケーションの実行を終了させるものではない。
カテゴリ:クラス・ライブラリ 処理対象:コンソール・アプリケーション 
使用ライブラリ:Environmentクラス(System名前空間) 
使用ライブラリ:Applicationクラス(System.Windows.Forms名前空間) 
関連TIPS:コンソール・アプリケーションで終了コードを返すには?
 | 
 
 
|  
 | 
 
generated by  
 | 
 
 
 | 
 
 
	
		Insider.NET 記事ランキング
		
		
			本日
			月間