CFramework/CFramework/Framework/Input/Input.h

15 lines
652 B
C

#pragma once
#include <Windows.h>
// 低级输入钩子模块
// 问题: GetAsyncKeyState 在管理员权限/整合包环境下检测不到鼠标按键(左/右键)
// 方案: WH_MOUSE_LL 低级钩子全局捕获鼠标按下/释放, IsKeyDown 优先读钩子状态
// 键盘键仍然走 GetAsyncKeyState (菜单 INSERT 切换已验证有效)
// 若钩子仍无效, 用键盘触发键 (g_AimKey2, 默认 F9) 绕开鼠标键检测
bool IsKeyDown(int vk);
void InstallInputHook();
void RemoveInputHook();
bool IsMouseHookInstalled(); // 钩子是否安装成功 (诊断用)
unsigned long GetMouseHookCount(); // 钩子捕获事件数 (诊断用)