Ik zoek een linux-alternatief voor de LowLevelKeyboardProc manier om keypress events van het hele systeem op te vangen.
Ik wil niet de keypress events opvangen of iets dergelijks maar alleen tellen (simpelweg hoevaak heeft een user op het toetsenbord geramd?)
Aangezien X de input & output regelt, dacht ik eraan de X.org API te gebruiken, echter ik kan vrijwel niets vinden waarmee me dit lukt.
Kernel-modules vallen eigenlijk af aangezien het erg moelijk is om dit werkend te maken voor PS2 & USB-toetsenborden (zie linux keyloggers).
Via GTK is ook geen optie aangezien deze alleen events opvangt die in het programma zelf voorkomen, wanneer je typt buiten het window worden de events niet gepakt.
Het is wel mogelijk om steeds naar het laatste event te peeken maar dit komt de performance van mijn programma niet ten goede.
De Xevie extension is wel erg interessant, echter ik kreeg dit niet aan de praat na het installeren van de Xevie library op Ubuntu Feisty, X bleef volhouden dat de extensie niet geinstalleerd is. (volgens xeviestart en xdpyinfo)
Ik wil niet de keypress events opvangen of iets dergelijks maar alleen tellen (simpelweg hoevaak heeft een user op het toetsenbord geramd?)
Aangezien X de input & output regelt, dacht ik eraan de X.org API te gebruiken, echter ik kan vrijwel niets vinden waarmee me dit lukt.
Kernel-modules vallen eigenlijk af aangezien het erg moelijk is om dit werkend te maken voor PS2 & USB-toetsenborden (zie linux keyloggers).
Via GTK is ook geen optie aangezien deze alleen events opvangt die in het programma zelf voorkomen, wanneer je typt buiten het window worden de events niet gepakt.
Het is wel mogelijk om steeds naar het laatste event te peeken maar dit komt de performance van mijn programma niet ten goede.
De Xevie extension is wel erg interessant, echter ik kreeg dit niet aan de praat na het installeren van de Xevie library op Ubuntu Feisty, X bleef volhouden dat de extensie niet geinstalleerd is. (volgens xeviestart en xdpyinfo)
[ Voor 11% gewijzigd door Dutchmega op 11-07-2007 21:53 ]