键盘钩子dll编译出现问题,请大家支招,谢谢!
别问了 2010-02-02 09:53:46 我现在想编写一个键盘钩子,但现在出现问题了,以下为头文件和源文件的部分内容
头文件:
typedef LRESULT (* HOOKPROC)(int code, WPARAM wParam, LPARAM lParam);
typedef HHOOK (*_SetWindowsHookExW)(int, HOOKPROC, HINSTANCE, DWORD);
typedef LRESULT (*_CallNextHookEx)(HHOOK, int, WPARAM, LPARAM);
typedef LRESULT (*_UnhookWindowsHookEx)(HHOOK);
_CallNextHookEx CallNextHookEx;
_SetWindowsHookExW SetWindowsHookEx;
_UnhookWindowsHookEx UnhookWindowsHookEx;
源文件:
//获得SetWindowsHookEx函数的地址
HINSTANCE g_hHookApiDLL=LoadLibrary(_T("coredll.dll"));
SetWindowsHookEx=(_SetWindowsHookExW)GetProcAddress(g_hHookApiDLL, _T("SetWindowsHookExW"));
UnhookWindowsHookEx=(_UnhookWindowsHookEx)GetProcAddress(g_hHookApiDLL, _T("UnhookWindowsHookExW"));
CallNextHookEx=(_CallNextHookEx)GetProcAddress(g_hHookApiDLL, _T("CallNextHookEx"));
报错信息:
error C2501: 'SetWindowsHookEx' : missing storage-class or type specifiers
error C2365: 'SetWindowsHookEx' : redefinition; previous definition was a 'function'