• 締切済み

プロセス終了の検知について

Win2000、VB.net、.NET Framework 1.1 でWindowsアプリケーションを作成しています。 画面が表示されていない状態で、ある処理を行っている時に タスクマネージャからプロセスを終了させられたことを検知する イベントを教えてください。 Mainで Application.ApplicationExit, Application.ThreadExit のイベントをAddHandlerで関連付けているのですが タスクマネージャからプロセスを終了しても 関連付けたプロシージャの処理が行われません。 タスクマネージャからプロセスを終了した場合は そのプロセスにメッセージは送られないのでしょうか? また、ある条件になると画面を表示する仕様なのですが 画面を表示中にタスクマネージャからプロセスを終了しても Form_Closingイベントが発生しません。 そういうものなのですか? よろしくお願いいたします。

みんなの回答

回答No.1

WindowsXP + VB2005 + .NET 2.0 の環境で ApplicationExit イベントで MsgBox を実行させてみましたら、タスクマネージャからプロセスを終了させてもメッセージボックスが表示されました。 ただ、私がやってみたのは Main は使用せず、スタートアップフォームを Form1 にするやり方で、Form の New() 内で AddHandler Application.ApplicationExit, AddressOf ... としたので、その辺りの違いによるものかも・・・と思ったりします。 ( .NET 1.1 と .NET 2.0 の違いという可能性もなくはないですが。)

kimger
質問者

お礼

tsukasa-12rさんに試していただいた方法で、私の環境で試してみましたが、やはりイベントは発生しませんでした。 ですので、環境の違いなのかもしれません。 回答、ありがとうございました。

関連するQ&A