• ベストアンサー

プロセスの終了コードについて教えてください

プロセスがメモリのアクセス違反などで落ちた場合、 プロセスの終了コードにはどんな値が入ってくるのでしょうか? その値はどこかのヘッダで定義されているのでしょうか? 質問の経緯としては、、、 プロセスAは終了時、終了コードをセットして終了します。 で、プロセスBで終了コードをチェックしているのですが、 この場合、アクセス違反などで異常終了したときの終了コードと プロセスAが設定する値がぶつからないか心配になるり、 質問させていただきました。 識者の方、よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • itohh
  • ベストアンサー率45% (210/459)
回答No.2

こんにちは。itohhといいます。 >アクセス違反などで異常終了したとき 基本的に例外処理を行っていないとシステムで「デバッグするか?」というダイアログを 表示してしまいます。 わたしがよく使う方法は。 例外処理(try、catch)で例外エラーを拾います。そして、エラーコードとメッセージを 取得してexit関数で終了コードを指定するようにします。 (実際のエラーコード、エラーメッセージはNTのイベントログに出力する) 例えば。 正常終了なら0。 異常終了なら1。(エラーによって詳細に分けても良いです。) などです。 これで、終了を監視しているプロセスで統一したコードが渡ります。 こんな方法では如何でしょうか? try、catchの使い方は、MSDNライブラリを参照してください。

nabezo-
質問者

お礼

アドバイスありがとうございました。 参考にさせて頂きます。

その他の回答 (1)

  • toysmith
  • ベストアンサー率37% (570/1525)
回答No.1

プロセスステータスは実行環境依存です。 少なくともOSが指定されていないと答えようがありません。

nabezo-
質問者

補足

すみません、その通りです。 書き忘れました。 OSは Windows NT 4.0 です。

関連するQ&A