- 注册时间
- 2011-3-6
- 最后登录
- 1970-1-1
该用户从未签到
|
论坛里VC好象都是用SetWindowHookEx来注入DLL。
我试了下用CreateRemoteThread来注入DLL,但是呼不出窗体,不知道怎么回事,贴下代码。按下HOME键没有反应,钩子是提示安装成功的。- LRESULT CALLBACK KeyboardProc(int code, WPARAM wParam, LPARAM lParam)
- {
- AFX_MANAGE_STATE(AfxGetStaticModuleState());
- if( wParam == VK_HOME && (lParam & (1<<31)) && code == HC_ACTION)
- {
- AfxMessageBox(_T("按下HOME键"));
- }
- return CallNextHookEx(g_HookState, code, wParam, lParam);
- }
- BOOL CdllApp::InitInstance()
- {
- CWinApp::InitInstance();
- g_HookState = SetWindowsHookExA(WH_KEYBOARD, KeyboardProc, NULL, ::GetCurrentThreadId());
- if(g_HookState != NULL)
- {
- AfxMessageBox(_T("钩子安装成功"));
- }
- else
- {
- AfxMessageBox(_T("钩子安装失败"));
- }
- return TRUE;
- }
复制代码 希望知道的来解答下啊!!! |
|