Windowsでシステムフックを利用して、テンキーを特殊な目的に使おうとしています。システムフックでテンキーのどのボタンが押されているかを判定することはできているのですが、例えばテキストエディタを使っているときにテンキーを押してしまうと「本来の働き」である数字がテキストエディタに入力されてしまいます。システムフックはメッセージを横取りできる物だと思っていたのですが傍聴できるだけなのでしょうか。ある特定の条件を満たしたメッセージだけを本来の受取り手に渡さないようにすることはどうすればできるのでしょうか?

回答の条件
  • 1人2回まで
  • 登録:2006/07/09 01:04:48
  • 終了:2006/07/13 13:26:29

ベストアンサー

id:ohmix1 No.1

ohmix1回答回数235ベストアンサー獲得回数142006/07/10 11:01:47

ポイント60pt

コールバック関数でCallNextHookEx()を呼ばずにreturn 1;すれば良いのでは?

http://www.microsoft.com/JAPAN/developer/library/jpwinpf/_win32_...

>code パラメータの値が 0 以上で、このフックプロシージャがメッセージを処理した場合、

>0 以外の値を返すと、フックチェーン内の残りのフックプロシージャや目的のウィンドウプロシージャへメッセージを渡すことを防止できます。

id:westfish

なるほど、残念ながら諸事情で試す時間が取れませんでしたが、近いうちに試してみたいと思います。ありがとうございました。

2006/07/13 13:26:01

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません