AppleWin/source/Windows/HookFilter.h

39 lines
696 B
C++

#pragma once
class HookFilter
{
public:
HookFilter()
{
m_hFrameWindow = (HWND)0;
m_bHookAltTab = false;
m_bHookAltGrControl = false;
m_hhook = 0;
m_hHookThread = NULL;
m_HookThreadId = 0;
}
~HookFilter()
{
}
bool InitHookThread(void);
void UninitHookThread(void);
private:
static LRESULT CALLBACK LowLevelKeyboardProc(_In_ int nCode, _In_ WPARAM wParam, _In_ LPARAM lParam);
bool HookFilterForKeyboard(void);
void UnhookFilterForKeyboard(void);
static DWORD WINAPI HookThread(LPVOID lpParameter);
HWND m_hFrameWindow;
bool m_bHookAltTab;
bool m_bHookAltGrControl;
HHOOK m_hhook;
HANDLE m_hHookThread;
DWORD m_HookThreadId;
};
HookFilter& GetHookFilter(void);