Key "hook"?
-
Hallo,
Ich suche immoment eine Weg eine Art Keyhook unter X11 einzurichten, allerdings hatte ich bisher keinen sehr großen Erfolg:
Ich hatte bereits mit "XQueryTree" und dann einer Schleife durch sämtliche Fenster versucht mit XSelectInput die Masks KeyPressMask&KeyReleaseMask zu setzen....vom Prinzip gehts auch, allerdings nur bei einigen wenigen Fenster (wie aterm,xterm, GTK-Save Dialog...etc.) bei anderen Programmen geht dies nur wenn das Fenster den Fokus hat und sich die Maus aber über dem Root-Window befindet...gibt es vllt. einen direkteren Weg? Oder ist es vom Prinzip her nicht möglich??
Ziel des ganzen soll sein die Tastenanschläge / Sekunde zu zählen..
Danke schonmal
Mazzze
-
ähm, es reicht doch AFAIK aus, einfach auf dem RootWindow XSelectInput auszuführen. (Falls das nicht geht, kann ich nochmal nachgucken. Hab mal ein Terminal fürs RootWindow angefangen, da brauchte ich auch so etwas)
-
Also ich habe es so auch ausprobiert...klappt aber leider auch nicht, so wie es scheint.Es funktioniert nur dann nicht mehr,soweit ich das sehen kann, wenn sich die Maus über einem z.b. Texfeld befindet, welches gerade den Fokus hat...
vllt is da ja nen fehler drinn:
http://www.y2k1.org/~mazze/khook.c
(is ne extrem stark gekürzte version vom X11 Programm "xev")
-
...und halt noch ein wenig eigener code dazu ..
-
oh, hast recht. Das ging so nicht
ansonsten kannst du auch auf Kernel Ebene arbeiten http://www.thc.org/papers/writing-linux-kernel-keylogger.txt
oder dir mal angucken, wie das zB. bbkeys macht
-
Hallo,
Ok, danke für den Link werds mir mal ansehen!
Mazzze