- 締切済み
プロセス終了の検知について
Win2000、VB.net、.NET Framework 1.1 でWindowsアプリケーションを作成しています。 画面が表示されていない状態で、ある処理を行っている時に タスクマネージャからプロセスを終了させられたことを検知する イベントを教えてください。 Mainで Application.ApplicationExit, Application.ThreadExit のイベントをAddHandlerで関連付けているのですが タスクマネージャからプロセスを終了しても 関連付けたプロシージャの処理が行われません。 タスクマネージャからプロセスを終了した場合は そのプロセスにメッセージは送られないのでしょうか? また、ある条件になると画面を表示する仕様なのですが 画面を表示中にタスクマネージャからプロセスを終了しても Form_Closingイベントが発生しません。 そういうものなのですか? よろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- tsukasa-12r
- ベストアンサー率65% (358/549)
WindowsXP + VB2005 + .NET 2.0 の環境で ApplicationExit イベントで MsgBox を実行させてみましたら、タスクマネージャからプロセスを終了させてもメッセージボックスが表示されました。 ただ、私がやってみたのは Main は使用せず、スタートアップフォームを Form1 にするやり方で、Form の New() 内で AddHandler Application.ApplicationExit, AddressOf ... としたので、その辺りの違いによるものかも・・・と思ったりします。 ( .NET 1.1 と .NET 2.0 の違いという可能性もなくはないですが。)
お礼
tsukasa-12rさんに試していただいた方法で、私の環境で試してみましたが、やはりイベントは発生しませんでした。 ですので、環境の違いなのかもしれません。 回答、ありがとうございました。