キーボードをフックしようとすると問題が発生します (キーロガーではありません!) Word を自動化しようとしていますが、特定のフックで dll を呼び出しています。
私はデスクトップとノートブックを持っています (2 つは同じウイルス対策 + Windows 7 x64 です)。唯一の違いは、ノートブックでは Windows が新しいバージョンでインストールされていることです。問題: ノートブックではすべて正常に動作します。しかし、デスクトップでは奇妙なことが起こります。フックがインストールされていて、メモ帳を対象としている場合はうまく機能しますが、Word を対象としている場合、フックがインストールされていても、外部関数の呼び出しが抑制されます!
LRESULT CALLBACK HookProc(int code, WPARAM wParam, LPARAM lParam)
{
if (code<0) {
return CallNextHookEx(HookHandle,code,wParam,lParam);
}
bool callNextHook = true;
if (callFunction != NULL) {
// ONLY WITH WORD AND ONLY IN THE DESKTOP callFunction SEENS TO BE NULL!!!
// this is a pointer to a function in main application
callFunction(code,wParam,lParam,&callNextHook);
} else {
ShowMessage("THE UNKNOW ERROR! THIS MESSAGE IS SHOWED, THEN HOOK IS INSTALLED");
}
//Call the next hook in the chain
if (callNextHook) {
return CallNextHookEx(HookHandle,code,wParam,lParam);
}
return 0;
}
ウイルス対策を無効にしたり、ユーザー アカウント制御を変更したり、管理者としてプログラムを実行したりしましたが、何も機能しません。この違いの原因は何ですか?