2008-09-12 12 views
1

WindowsボックスのC#から、プロセスがどのように停止したかを調べる方法はありますか? Processクラスを見て、EnableRaisingEvents = trueを設定すると、Exitedイベントからフレンドリーなコールバックを得ることができました。私はプロセスが殺されたのかどうか、それが自然に出たのかどうかを調べることはできませんでしたか?プロセスはどのように終了しましたか?

答えて

3

プロセスモニタを起動(Sysinternals、Microsoftの一部)、プロセスを実行して終了させて​​から、Process Monitorの結果をプロセス名でフィルタリングします。終了を含むすべてのプロセス名を表示できますコード。

0

プロセスの戻りコードを使用することができます。プロセスがMainメソッドからゼロ以外の値を返す場合は、プロセス自身が終了したかどうか(戻り値が一致するかどうか)を確認できます。

0

良い答えアントワーヌ、悲しいかな、私はリターンコードを変更できません。私の悪い - 私は質問の範囲を絞り込む必要があると思う。

現実的に私はプログラム的な解決策も必要とは思わない - ユーティリティはうまくいく - 私は印象的な外観を見たProcess Explorerしかし、それは私にこれらの詳細を与えるようには見えない。

私が質問したいプログラムは、Windowsのスケジュールされたタスクと同等のスケジューリングシステムによって実行されていますが、それは問題ではありません。そのスケジューラがプログラムを強制的に停止しているかどうかを検出する方法はありますか?

関連する問題