|
static HHOOK _myHook = NULL;
LRESULT CALLBACK MyHookProc(
_In_ int nCode,
_In_ WPARAM wParam,
_In_ LPARAM lParam
)
{
return CallNextHookEx(NULL, nCode, wParam, lParam);// HHOOK parameter is optional and ignored
}
bool hookStart()
{
if (_myHook)
return true;
_myHook = SetWindowsHookEx(
WH_GETMESSAGE,
(HOOKPROC)&MyHookProc,
GetMainDll(),
0);
if (NULL == _myHook)
{
assert(false && "[hookStart]hook false!");
return false;
}
return true;
}
bool hookEnd()
{
if (NULL == _myHook)
return true;
if (FALSE == UnhookWindowsHookEx(_myHook))
{
assert(false && "[hookEnd]unhook false!");
return false;
}
_myHook = NULL;
return true;
} |
|
|