プロが教える店舗&オフィスのセキュリティ対策術

VB2008でタスクトレイにアイコンを表示して、常駐するアプリケーションを初めて作成したのですが、Windowsのシャットダウンするときに、この常駐アプリを手動で終了させないとWindowsが落ちません。
何かプログラムで足りないところがあるのでしょうか?

逆にWindowsを終了させないってある意味凄いですが、そのような仕組みはWindowsにあるのでしょうか?
たまたまだったのでしょうか?

A 回答 (4件)

ちょっとうろおぼえで申し訳ないんですが、VB2005で、タスクトレイにアイコンを表示しているときは、FormClosingイベントのeが、CloseReason.WindowsShutDownのとき、明示的にタスクトレイアイコンを解放した覚えがあるんですが・・・。



FormClosingイベントがとれない場合も、OSのシャットダウンを検知して明示的にタスクトレイアイコンを解放しなければならないのかもしれません。

自信はないです。
    • good
    • 0

FormClosingイベントでシャットダウンを拒否しているとか。


下のサンプルは、CloseReason.WindowsShutDownのときも
Cancelしているのがまずそうです。

参考URL:http://www.atmarkit.co.jp/fdotnet/dotnettips/394 …
    • good
    • 0

サービスでしょうか?


シャットダウンのエントリにバグがあるのではないですか?
あるいはデスクトップとの対話が不可なのにメッセージボックスを
表示するとか・・・
サービスでないとすると、WM_CLOSEを処理しないとかあります。
先ずは常駐形態を提示してください。
    • good
    • 0

プログラムの事はわかりませんが、


>逆にWindowsを終了させないってある意味凄いですが、~

業務で使っていて間違えてPCを落とされたら困る場合、そういう作りの
アプリケーションにしたりしますよ。
終了プロセスに進めないようにするというのはできます。
(作ってもらいました)

su31foxさんの場合、これが意図的ではないため困っているようですが・・
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!