这个项目能做什么

该项目把汉王 PV60(Ai Pointer)语音笔从演示翻页器改造成输入设备。设备实际厂商为深圳双猴科技(dosmono),汉王为 OEM 贴牌。 主要功能:短按上/下键翻页或滚动;长按上键回车、长按下键退格;按一下语音键打开麦克风并触发输入法语音热键(右 Alt),再按一下结束;按住语音键进入空中飞鼠模式(陀螺仪控制光标);托盘显示电量百分比、连接状态与拦截方式。 硬件为 USB 复合设备(VID_0611 / PID_3001),包含 USB Audio 麦克风、HID 键盘、HID 鼠标以及厂商页 0xFF00 的 33 字节收发通道,所有按键与配置均走厂商页。文档记录了按键码与电量报文格式(毫伏小端,官方百分比公式),并说明笔仅在唤醒状态每 10 秒上报一次电量。 实现依赖 Interception 键盘过滤驱动以干净拦截笔的按键,README 明确提示该驱动可能被网游反作弊系统(ACE、Vanguard、VAC/EAC/BattlEye 等)判定为可疑,建议游戏前卸载驱动并重启;卸载后程序退回低级键盘钩子降级模式,功能仍可用但长按会漏出字符。 README 还记录了若干实测结论:长按行为由固件宏占用,用户态钩子无法干净拦截;厂商 DLL(kwma_x64.dll)会破坏进程堆,需隔离到独立子进程并加监护重启;SDK 对休眠中的笔会谎报成功,需补发命令并靠只读请求探活;部分输入法会忽略带注入标记的 SendInput 事件,需在驱动层发键,且虚拟键转扫描码需用 MAPVK_VK_TO_VSC_EX;固件宏无法通过配置修改,且配置写入易失。 仓库包含主程序、音频宿主子进程、多个逆向排查工具(抓包、A/B 对照、命令枚举、探活压测等)以及设计文档。构建需 .NET 8 SDK,可发布为自包含单文件。第三方组件(厂商 DLL 与 Interception)不随仓库分发,需自行准备;缺少厂商 DLL 时语音功能失效,其余功能照常。路径目前硬编码为 D:\pen-hack\,配置保存后热生效。许可为 GNU GPL v3,仅覆盖自有代码。