在Java中的另一个窗口上操作时,如何记录击键?

时间:2010-01-06 02:49:05

标签: java swing keylogger

当我在各种网站的浏览器窗口中时,我正在寻找记录键击和鼠标位置,但我不确定如何在SWING(或其他GUI)窗口之外执行此操作。

当另一个应用程序的窗口是活动窗口时,如何记录击键?

3 个答案:

答案 0 :(得分:4)

Java不会提供您所需的支持。如果您可以访问X中的RECORD扩展或Windows上的Win32,则执行此操作非常简单。

这是一个Python项目,它实现了对这两个平台的支持:pykeylogger

答案 1 :(得分:2)

我认为你不能用纯Java做到这一点。如果可能的话,它需要(高度)平台特定的本机代码库的帮助。

答案 2 :(得分:2)

(仅限Windows)从理论上讲,您可以使用JNA或JNI绑定到GetAsyncKeyState,并且您可以监控按键操作。