系统范围的密钥抓取是一个棘手的主题,但系统范围的密钥挂钩甚至更棘手.每个OS/GUI都有自己的解决方案,至少是为了抓取.Qt4的不公开这样的特征,但Qt的扩展库解决其问题QxtGlobalShortcut.这是一个很好的包装:
因此,您可以获取显式键组合,即特定键和修饰符(XGrabKey()允许更多一点),没有其他应用程序将获得.这里不支持密钥序列,即连续密钥组合.
键盘挂钩功能更强大,因为它允许在输入事件中窥视(甚至过滤它们).它不仅被键盘记录器使用,而且它们是这里的典型关联.
如果您使用的是Windows,那么您可以阅读:
在X11中,它要复杂得多.您可能需要阅读至少两页:
有一个X事件拦截扩展,但它没有维护,最终被删除.
希望它可以在没有X11基础设施的帮助下完成.在Linux 2.6内核中有"事件接口",称为evdev,可以在这里使用.详细信息可以在logkey Linux keylogger的源代码中找到.它也可以用类似于evdev的效果来完成.请参阅我的PoC项目: kaos - 键活动屏幕显示.
我没有Mac,所以没有进一步的参考.;)
| 归档时间: |
|
| 查看次数: |
6053 次 |
| 最近记录: |