私は例外処理のための小さな助けが必要なWindowsフォームアプリケーションを作成しています。例外のフォームアプリケーションを停止する
私のアプリケーションが行うこと(概要):最初から入力を受け取ります。ユーザーがFinish
ボタンをクリックすると、入力が処理されます。与えられた入力に基づいて、ある計算が実行される。その後、msiexec /x
コマンド(別のプロセスとして起動)を使用してアプリケーションをアンインストールします。
入力処理時(つまり、アンインストールタスクの前)に例外が発生した場合は、Application.Exit()
メソッドを呼び出しています。
try
{
//some processing
}
catch (Exception exc)
{
DisplayErrorMessage();
WriteToLog(exc.Message);
WriteToLog("Inner Exception: " + exc.InnerException);
Application.Exit();
}
私の観察:任意の例外が処理時間の間に発生した場合は、Process.Start()
方法はnull
を返すコードスニペットに続いて、あなたのアイデアを与えるかもしれません。
誰かがこれがなぜ起こっているのかを伝えることができますか?これを克服する方法はありますか?
P.S:以前に例外が発生した場合でもプロセスが開始されないように、コードを変更する必要がありますか?
あなたは 'Process.Start()'を呼び出すないとき? – imlokesh
私は 'catch'ブロックの実行の後に呼びます。 –
' catch'の中に 'return'を追加して、実行後のコードを防ぐ必要があります。 – Sinatr