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

グローバルマウスフックには成功しました。
しかし、フックによって得たイベントを発生させたウィンドウにもそのイベントが通知されます。
(例えば、右クリックをフックしたとしても、カーソル位置のウィンドウのポップアップメニューを開いてしまいます。)
これを通知しないようにしたいのです。

しばらく試行錯誤をしましたが、分かりません。
何かよい方法をご存知でしょうか? ご教授願います。

A 回答 (1件)

フックプロシージャの中で CallNextHookEx() を呼び出していませんか?


MouseProc() のヘルプ、戻り値の説明をご覧ください。

参考URL:http://msdn.microsoft.com/library/ja/default.asp …
    • good
    • 0
この回答へのお礼

ご迷惑おかけして申し訳ありませんでした。
ご指摘通り、ヘルプをよく読んでおりませんでした。
CallNextHookEx() の第二引数に0以上の値を入れればよいと誤解していました。
その誤解を疑うことのないまま、時間を浪費しました。
それどころか、CallNextHookEx()での制御はフックチェーンに関してのみ適応し通常のメッセージループには関与しないのだ、とさえ思い込みました。
そのようにして、このような愚問を致した次第であります。

「思いて学ばざれば則ち殆し」という金言を思い知りました。
よくよく反省します。ありがとうございました。

お礼日時:2007/04/09 19:47

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