你怎么能拥有一个隐藏设备?

问题描述 投票:21回答:1

我想拥有一个可能已经插入的隐藏设备的所有权,消耗它的输出,同时防止其他人(X11或终端)消耗它。

如果我可以提供帮助,我不想伪装成终端,而是垄断某个特定的隐藏或角色设备。这个想法是一些隐藏设备可能被x /终端识别为鼠标/键盘,但第二个鼠标或键盘可以用于其他东西,但要做到这一点,你需要确保它们不会发送虚假输入到开放式终端。

有没有人对如何做到这一点有任何见解?

linux unix terminal hid input-devices
1个回答
25
投票

我已经这样做了 - 我的特定应用程序是一个守护程序,它从USB HID条形码阅读器(它呈现为USB HID键盘设备)中读取事件。

为此,我使用事件设备接口,打开与我之后的设备相对应的/dev/input/event*设备。然后,您可以在设备上发出EVIOCGRAB ioctl,将其抓取以供独占使用,并在设备可用时从设备读取事件(代表按键,鼠标移动等)。

(当设备被专用时,只有您的应用程序才能看到它的事件)。

© www.soinside.com 2019 - 2024. All rights reserved.