掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
キー入力をグローバルフックするには? (ID:56328)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
>「うまくフックできない」とは、具体的にどんな感じなんですか? え〜と、つまりはキーロガーを作りたいわけですが、このプログラムを実行するとキー入力をフックして、なんのキーが押されたのかをクライアント領域に表示するようになっています。そしてここからが問題点なのですが、このプログラムがフォーカスを持ているときはちゃんと「このキーが押されましたよー」って表示するのですが、例えばメモ帳を開いてなんか入力してみても自作プログラムの方はまったく反応しません。spy++でチェックしてみたところ、メモ帳に向けて入力したときはCKeyHook::KeyboardProcが呼ばれていないようです。 >あとは、何点か、念のための確認ですが >・__hInstance はどうやって取得してますか? >・TargetWnd はどうやって取得してますか? __hInstanceはDllMainがDLL_PROCESS_ATTACHを受け取ったときに受け取っています。 TargetWndは専用の関数を用意してデータメンバとして保持しています。 これがそのコードです。 void CKeyHook::SetTargetWnd(HWND hWnd) { TargetWnd = hWnd; return ; }
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.