• 締切済み

キーボードフックについて

現在グローバルフックでキーボードからマウスを操作するプログラムを作成中です。 dll内にフックプロシージャを作成し、十字キーが押されたら呼び出し元のウインドウにWM_USERを送るというつくりになっています。 コードを組んだところ、一応動いたのですが、一度だけキーを押したはずなのにWM_USERが2,3回ぐらい送られてきます。 これを回避する方法はあるのでしょうか? どなたかご教授お願いします。 <環境> Windows Vista VC++ 2005 Express Edition

みんなの回答

回答No.1

お疲れ様です。 「WM_KEYDOWN」をフックしていると思って間違いないでしょうか? 参照URLに記載されているようにオートリピート機能で1回の押下で複数のイベントが発生します。 回避方法というか対応方法も参照URLを参照の事。

参考URL:
http://yokohama.cool.ne.jp/chokuto/urawaza/message/WM_KEYDOWN.html

関連するQ&A