2009-11-11 4 views
2

J'écris une application qui surveille la souris et le clavier de la personne. S'ils n'ont pas utilisé le clavier ou la souris pendant 1 minute, un message indiquant «Vous n'avez pas utilisé la souris ou le clavier pendant 1 minute» apparaît avec un bouton OK.Keylogger global en Java

Comment faire cela en Java?

+0

@Manish Avez-vous pu le faire finalement? J'en ai besoin d'un maintenant. –

+0

Dupliquer de https://stackoverflow.com/questions/3078646/jna-keyboard-hook-in-windows –

Répondre

3

Si vous voulez faire cela uniquement pour votre application, alors c'est très simple. Vous pouvez simplement ajouter listerns i.e Toolkit.getDefaultToolkit.addAwtEventListener(..).

Mais pour le système dans son ensemble, j'ai peur, cela ne peut pas être fait en Java, vous pouvez utiliser JNI.

0

Si vous voulez uniquement surveiller l'activité dans les fenêtres d'application Java, c'est trivial - tout ce que vous avez à faire est de vous inscrire à l'événement approprié.

Mais pour surveiller toute l'activité de la souris et le clavier dans le système d'exploitation que vous devrez brancher à l'API qui est dépendant de la plateforme et nécessitera l'utilisation de la JNI

4

Vous avez besoin d'un peu de code C/C++ et appelez SetWindowsHookEx Cette La fonction vous permet de vous connecter aux événements Windows et de recevoir une copie.

Cette question contient du code pour commencer: JNA Keyboard Hook in Windows