gerade gedrueckte tasten ermitteln

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Costi
User
Beiträge: 545
Registriert: Donnerstag 17. August 2006, 14:21

wie kann ich unter windows (und vieliecht auch unter linux) lesend auf dem keyboard zugreifen.
und zwar sozusagen global - ohne dass ein bestimmter fenster im focus sein muss ?


danke
cp != mv
lunar

Unter Windows geht das mit Hooks, für die du pywin32 brauchst. Allerdings nur bis XP, unter Vista kannst du nicht mehr alle Tastatureingaben abfangen.
Benutzeravatar
Trundle
User
Beiträge: 591
Registriert: Dienstag 3. Juli 2007, 16:45

Für Linux/andere Betriebssysteme mit X11 gibt es Snippets im weiten, weiten Netz, die python-xlib verwenden. Hat bei mir aber, IIRC, nicht funktioniert, als ich das irgendwann einmal getestet habe.
Benutzeravatar
keppla
User
Beiträge: 483
Registriert: Montag 31. Oktober 2005, 00:12

Costi hat geschrieben:und zwar sozusagen global - ohne dass ein bestimmter fenster im focus sein muss ?
Ich weiß leider nicht, wie das mit dem Focus steht, aber unter pygame gibt es so eine funktionalität.
Benutzeravatar
Masaru
User
Beiträge: 425
Registriert: Mittwoch 4. August 2004, 22:17

Trundle hat geschrieben:Für Linux/andere Betriebssysteme mit X11 gibt es Snippets im weiten, weiten Netz, die python-xlib verwenden. Hat bei mir aber, IIRC, nicht funktioniert, als ich das irgendwann einmal getestet habe.
Um wirklich effektiv ein Keystroke loggig unter Linux zu realisieren, wirst Du wohl oder übel ein Kernel Modul schrauben müssen.

Schau mal hierfür unter: http://freeworld.thc.org/welcome/ ... wähle die "Freeworld" Sektion aus und schaue auf der dortigen Seite unter "Papers". Dort wirst Du mehr finden.

>>Masaru<<
fred.reichbier
User
Beiträge: 155
Registriert: Freitag 29. Dezember 2006, 18:27

Das record-Beispiel von der python-xlib hat bei mir recht gut funktioniert. Dafür muss halt erstens X aktiv sein und zweitens ist das bestimmt nicht so effektiv :D
Antworten