DOBON.NET DOBON.NETプログラミング掲示板過去ログ

常に監視している状態にする

環境/言語:[VB6.0]
分類:[VB6以前]

VBでどんな状態(最小化して画面にないときや、上に別ウインドウが重なったりしたとき)でも常に反応するものを作りたいのですが、何かいい方法はないのでしょうか?
■No18234に返信(haveさんの記事)
> VBでどんな状態(最小化して画面にないときや、上に別ウインドウが重なったりしたとき)でも常に反応するものを作りたいのですが、何かいい方法はないのでしょうか?

  何を監視したいのでしょうか?
  デスクトップ上のイベント?

  対象となるものが何か限定されないので、答えようがありません。

  システムサービスででも、監視は可能です。
  VBでシステムサービスを作ることも可能ですが・・・

以上。
監視するものは・・・
いまKerDownイベントをFormにつけてたとえばAを押したときにONとOFFを順番に表示するというものを作ってるんでこれを監視したいんですが・・・
VB6なのでグローバルフックをC++でDLLを作って、、、と困難ではないでしょうか。

お手軽なものではホットキーという仕組みがあります。
キーの組み合わせと通知先ウィンドウハンドルをOSへ登録する方法です。
指定したキーが押されると指定したウィンドウへWM_HOTKEYが通知されます。
APIのRegisterHotkey,UnregisterHotkeyを調べてみてください。
ただし、フォームをいわゆるサブクラス化する必要があります。

DOBON.NET | プログラミング道 | プログラミング掲示板