-1
サードパーティのDLLが読み込まれているときに、アプリケーションのフローを停止するMessageBoxウィンドウが開かれることがあります。サードパーティ製のDLLで作成されたメッセージボックスを検出する
SetWindowsHookEx
とWH_CBT
を使用しようとしていますが、コールバックが呼び出されません。
私はこの方法でそれを呼び出してみました:
SetWindowsHookEx (WH_CBT, myCallback, NULL, 0);
しかし、それは働いていませんでした。
この機能を正しく呼び出すにはどうすればよいですか?
あなたは関数にNULLと0渡すことにより、フックを注入するつもりはありません。エラー処理を改善し、API関数の戻り値を無視しないでください。 –
私はSetWindowsHookEx(WH_CBT、myCallback、GetModuleHandle(0)、GetCurrentThreadId())を試みましたが、役に立たなかった。 – kambi
あなたは無作為に試しています。 WH_CBTのようなグローバルフックには、他のプロセスに注入できるDLLが必要です。それは決してGetModuleHandle(0)にはなりません、あなたは自分のEXEを注入することはできません。 Googleヒットをご覧ください。これはよくカバーされています。 –