私はC++で基本的なキーロガーを作成しようとしていますが、これまでのところ、winapiを使用してローレバーキーボードフックをインストールすることができました。キーが押されるたびに通知されます。フォーカスが別のウィンドウに変更されるたびに通知するのと同じようなことをしたいので、ユーザーが入力しているウィンドウがわかります。HW_CBTフックを設定しようとしましたが、通知が表示されません。
これを行うための最良の方法は何ですか?
編集:
私はこのコードを編集しました:
LRESULT CALLBACK CallWndProc(int nCode, WPARAM wParam, LPARAM lParam) {
cout<<"event";
return CallNextHookEx(0, nCode, wParam, lParam);
}
とSetWindowsHookEx(WH_CALLWNDPROC, CallWndProc, NULL, NULL);
私は私のプログラムにもこれを持っています:
while(true)
GetMessage(&msg,0,WM_KEYFIRST, WM_KEYLAST);
キーストロークに関する通知を除いて、プログラムを実行しても通知が届きません。
編集2!! とタイマーを使っGetWindowText()
てやりました。GetForegroundWindow()
私が探していたものではありませんが、これで十分です。最初の答えを受け入れます...