CKeyBoardHook.h 520 B

12345678910111213141516171819202122232425262728
  1. #ifndef CKEYBOARDHOOK_H
  2. #define CKEYBOARDHOOK_H
  3. #include <windows.h>
  4. #include <memory>
  5. class CKeyBoardHook
  6. {
  7. public:
  8. CKeyBoardHook();
  9. ~CKeyBoardHook();
  10. static LRESULT CALLBACK Hotkey_Filter(int nCode, WPARAM wParam, LPARAM lParam);
  11. bool Hotkey_Install(DWORD ThreadID);
  12. static CKeyBoardHook *m_pThis;
  13. private:
  14. bool Hotkey_UnInstall();
  15. HMODULE h_module;
  16. HANDLE g_hProcess;
  17. HHOOK g_HotKey;
  18. };
  19. extern std::shared_ptr<CKeyBoardHook> g_keyBoardHookPtr;
  20. #endif // CKEYBOARDHOOK_H