タグ

SetWindowsHookExとHookに関するshokaiのブックマーク (6)

  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

  • グローバルフック・ザ・マウス

    今更ながら、DDEML関数を.NETにマッピングしてみています。実は『DDEって何?』レベルからのスタートなんですが。一通り調べた感想は、まあ要するに規格化されたメッセージだなと。いやそのままですが。直接DDEメッセージを扱うのではなく、DDEML関数を通して扱うとなると実体が見えにくいので。しかし一番手間取るのがドキュメント部分だったり……。 さて今日は、前回のと対をなす、マウスフックを実装するクラスを紹介しましょう。 これもグローバルフックを使用しますが、なぜか.NETで可能なので。あ、でもNT系しか使えません。 コードを解説すると、基的なところはというかほとんどKeyboardHookと同じです。ちょっとした技巧としてFieldOffset属性を使用して共有体もどきを作っているくらいでしょうか。 注意点として、キーボードフックと同じく簡単なクラスなので何かのメソッド内で宣言・設定を

    グローバルフック・ザ・マウス
    shokai
    shokai 2006/03/19
    マウスの方のラッパーもきたー。神すぎる
  • グローバルフック・ザ・キーボード

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

    グローバルフック・ザ・キーボード
    shokai
    shokai 2006/03/19
    ラッパークラスきたーーー
  • MSDN ホームページ

    This browser is no longer supported. Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

    MSDN ホームページ
    shokai
    shokai 2006/03/19
    マイクロソフトが配布してるAlt+Tabの強化版の奴のコード。これもSetWindowsHookEx使って実装してる
  • Microsoft Support

    All Microsoft Global Microsoft 365 Teams Copilot Windows Surface Xbox Deals Small Business Support Software Windows Apps AI Outlook OneDrive Microsoft Teams OneNote Microsoft Edge Skype PCs & Devices Computers Shop Xbox Accessories VR & mixed reality Certified Refurbished Trade-in for cash Entertainment Xbox Game Pass Ultimate PC Game Pass Xbox games PC and Windows games Movies & TV Business Micro

    Microsoft Support
    shokai
    shokai 2006/01/22
    低レベルフックでマウス座標を取得
  • AILight - 掲示板 - [Win(C#)] マウスフックに関して質問です.

    お久しぶりです.そなたです. いろいろ調べて萎えてしまったんで,質問することにしました. Webでマウスフックで調べたり,MSDNで調べたりして思ったんですが,C#でマウスフックするのは無理なんでしょうか? 過去ログに無理っぽぃような内容があった記憶があるんですが. なにしたいかっていうと,MSNMessengerとか何も触っていなかったら勝手に不在判断しますよね.で,マウスを触ると不在解除されますよね. これって,マウスフックしているわけで,同じようなことを今作っているC#プログラムでもさせたいと思っているんです. なにか参考になる情報や,実現方法などご存じでしたら教えて頂きたいです^^; よろしくお願いします.

    shokai
    shokai 2006/01/22
    SetWindowsHookExAPIでの低レベルフックのかけ方 DLL使わなくてもhookできるんだな
  • 1