Chciałbym wiedzieć, jak można tymczasowo wyłączyć klawiaturę i mysz w OS X.
Chciałbym wiedzieć, jak można tymczasowo wyłączyć klawiaturę i mysz w OS X.
Odpowiedzi:
Ponieważ lubisz to robić progmmatycznie, polecam sprawdzenie http://alphababy.sourceforge.net/ i rozwidlenie tego za pomocą potrzebnych bitów.
Jeśli zrobiłbyś to bez programu pośredniego, powiedziałbym, że wskazówka na temat używania „xinput set-int-prop [device_id]„ Device Enabled ”8 0” z Wyłączanie klawiatury i myszy na Uniksie (pod X) byłaby lepsza , ale rozumiem to, ponieważ nie o to prosisz.
Czy korzystasz z klawiatury i myszy bezprzewodowo czy tylko z USB? Jeśli najpierw, odłącz je za pomocą menu Bluetooth na panelu OS X. :)
Zgodnie z tym, co powiedział Jontas ...
W systemie Linux (nie jestem całkowicie pewien, czy chodzi o system OSX) możesz użyć polecenia xinput, aby wyłączyć i włączyć określone urządzenia. Aby uzyskać listę identyfikatorów urządzeń, po prostu uruchom polecenie xinput bez żadnych argumentów. Jeśli $ ID jest identyfikatorem urządzenia, wówczas następujące opcje go wyłączą:
export DISPLAY=:0
xinput set-int-prop $ID "Device Enabled" 8 0
a to włączy go ponownie:
xinput set-int-prop $ID "Device Enabled" 8 1
Mam nadzieję, że to się przyda.
Zrobiłem to na Linuksie (i chyba nie powinno być tak daleko na Mac OS X), gdzie właśnie wyładowałem moduły USB związane z HID. usbhid
był jednym z takich modułów
To oczywiście spowodowałoby, że wszystkie ukryte urządzenia byłyby bezużyteczne i będziesz potrzebować innego sposobu (takiego jak zdalny dostęp) odzyskania dostępu.
Odłączenie i podłączenie klawiatury / myszy może również przywrócić usługę.
Nie wiem o myszy (oczywiście poza odłączeniem), ale Keyboard Cleaner tymczasowo wyłącza klawiaturę.
W systemach GNU / Linux z Xorgiem (na Wayland może być inaczej) możesz używać, xinput
jak powiedział James R, i jak wyjaśniono tutaj: /unix//a/17172/48798
W systemie Mac OS X możesz wyłączyć klawiaturę za pomocą następującego kextunload
polecenia:
sudo kextunload /System/Library/Extensions/AppleUSBTopCase.kext/Contents/PlugIns/AppleUSBTCKeyb oard.kext/
(Umieściłem tam literówkę celowo, więc nie ryzykujesz niezamierzonym wydaniem tego polecenia, przypadkowym skopiowaniem i wklejeniem tekstu - musisz go poprawić i wydać celowo)
Aby ponownie włączyć klawiaturę, użyj:
sudo kextload /System/Library/Extensions/AppleUSBTopCase.kext/Contents/PlugIns/AppleUSBTCKeyboard.kext/
Zobacz także: https://discussions.apple.com/message/26569190#26569190