Ich versuche, Keyboard Keydown und Keyup-Ereignisse programmgesteuert zu generieren. Ich verwende derzeit CGPostKeyboardEvent, um dies zu tun, aber ich suche nach einer Möglichkeit, dies auf einer niedrigeren Ebene zu tun. Ich habe DDHidLib angeschaut, konnte aber keine Möglichkeit finden, ein falsches Ereignis zu erstellen. Kann jemand helfen?
aktualisieren : Dank dem Rat von Weichsel erstelle ich jetzt ein Key-Down-Event mit folgendem:
%Vor%Ich fand hier .
Jedoch steht mein Problem immer noch, also werde ich ein wenig weiter ausführen. Die Anwendung (3rd Party), die ich an Keypresses senden möchte, implementiert DDHidLib > Schlüsselerfassungsfunktion:
%Vor%Und dies wird nie mit der aktuellen Methode aufgerufen. Meine Vermutung ist, dass der mit CGEventCreateKeyboardEvent simulierte Key zu hoch ist, um von ddhidKeyboard erfasst zu werden: keyDown. Also versuche ich, das Keydown-Event auf einem ausreichend niedrigen Level zu erstellen, so dass es von ddhidKeyboard erkannt wird: keyDown.
Was stimmt nicht mit Quartz Event Services?
Ich denke, Sie sind auf dem richtigen Weg, aber Sie sollten CGEventCreateKeyboardEvent
anstelle von CGPostKeyboardEvent
, da Letzteres seit Mac OS X 10.6 veraltet ist.
Ereignis-Taps können auf der HID-Ebene injizieren, wenn Sie als root ausgeführt werden
Tags und Links c objective-c macos cocoa hid