概述
研究这个主要是为了进一步完善当前的自用软件 Alterful 的激活流程,实现“无热键”键盘增强。
虽然最终没能得到接近完美的解决办法,不过也在这个尝试的过程中取得了一些进展,故简单地记录一下。
转自猴开发博客:记一次 Windows 系统焦点光标的监控尝试
其实所研究这个问题的本质就是希望能够实时监测系统当中是否有输入焦点,也就是在文本框中输入内容时一闪一闪的光标,更准确地说应该是叫输入焦点,或者说“插入符”。
归纳了一下,主要有两种办法可以基本实现这一点。
一、GetGUIThreadInfo
作为处于待输入状态的控件,其父窗口一般来讲是当前时刻的顶级窗口,因此考虑通过函数 GetGUIThreadInfo 来获得顶层窗口的相关信息,进而判断顶层窗口是否含有输入焦点来确定系统全局是否含有输入焦点。
下面是 C++ 中 GetGUIThreadInfo 的函数原型: