DllExport void WINAPI InstallLaunchEv(HWND hwnd)
{
Hook=(HHOOK)SetWindowsHookEx(WH_KEYBOARD,(HOOKPROC)LauncherHook,theApp.m_hInstance,0);
}DllExport void WINAPI UnInstallLaunchEv()
{
DllCanUnloadNow();
UnhookWindowsHookEx(Hook);
}LRESULT CALLBACK LauncherHook(int nCode,WPARAM wParam,LPARAM lParam)
{ LRESULT Result=CallNextHookEx(Hook,nCode,wParam,lParam); if(nCode==HC_ACTION)
{
TRACE("RepeatCount")
}
return Result;
}这样有为什么只能钩到我LOAD这个DLL的程序啊,当这个程序不是当前窗口的时候,就钩不到
{
Hook=(HHOOK)SetWindowsHookEx(WH_KEYBOARD,(HOOKPROC)LauncherHook,theApp.m_hInstance,0);
}DllExport void WINAPI UnInstallLaunchEv()
{
DllCanUnloadNow();
UnhookWindowsHookEx(Hook);
}LRESULT CALLBACK LauncherHook(int nCode,WPARAM wParam,LPARAM lParam)
{ LRESULT Result=CallNextHookEx(Hook,nCode,wParam,lParam); if(nCode==HC_ACTION)
{
TRACE("RepeatCount")
}
return Result;
}这样有为什么只能钩到我LOAD这个DLL的程序啊,当这个程序不是当前窗口的时候,就钩不到
标准的用vs2008创建的 mfc dll,里面就有
==================
我看来看去也只对theApp.m_hInstance有点疑问
Hook=(HHOOK)SetWindowsHookEx(WH_KEYBOARD,(HOOKPROC)LauncherHook,GetModuleHandle(NULL),0);比如a程序里面使用了这个dll,安装了钩子,但也只能A程序是当前窗口才会有有信息在 output产生
如果a程序不是当前窗口,就没有信息在output产生
我的群号19206896
高级键盘钩子,我做成DLL也钩不到全局的,为什么呢
====================
可以钩到全局的。你改用Win32 DLL做一下试试
底层钩子,就是这样安的