タグ

ブックマーク / hongliang.seesaa.net (1)

  • グローバルフック・ザ・キーボード

    今日は、過去に書いたコードの中から、キーボードフックを実装するクラスを紹介しましょう。 .NETではフックに関して、「グローバルフックは使えない」と説明されています。DLLにグローバルフックで使用されるコールバック関数を実装しなければならないのに、.NETではそのDLLを作れないからです。 なんですが、何故かWH_KEYBOARD_LLやWH_MOUSE_LLはグローバルフックが可能なようなのです。理由は定かではありませんが。ひょっとしたら何らかの環境依存があるのかも知れません。ですから当然動作保証などできません。少なくとも私の環境では動いています。 コードそのものはそう大したことはしていません。SetWindowsHookExとその周辺を軽くラップした程度です。 テクニックとしては、直接SetWindowsHookExが要求するコールバックを外に見せるのではなく、コールバックメソッドその

    グローバルフック・ザ・キーボード
    pmint
    pmint 2013/09/27
    ".NET Framework 3.5 Client Profile"までなら使える。4.0になるとしっかり禁止されてるみたい。ホスティングプロセス上でも動いた。
  • 1