我需要build立一个简单的应用程序,除了在笔记本电脑上的内置触摸板之外,还需要连接4个USB鼠标的input(只能点击)。 我的首选操作系统是Linux。
任何想法如何能够在鼠标点击的应用程序中能够辨别? 我对C编程或任何需要开放。 这是一个简单的,一次性的项目,所以没有太精心的。
针对基于非SSL的签名和encryption的硬件加速
如何解释/ proc / mounts?
以编程方式查看移动式电脑(笔记本电脑/平板电脑/等)是否连接到扩展坞
我可以在Windows中使用的RAM的最大数量是多less?
在Linux中获取主板deviceID和BIOS序列号
MPX是在Linux下用于多鼠标和多点触控的地方,但是您需要使用xorg xserver 1.7来获得它的“正确”版本。 这通常被认为是X11R7.5的一部分,而X11R7.5只是“稳定”出来的,还没有被发行版集成。 (即使是xorg-edgers也没有,尽管如此,如果你是一个Ubuntu-er,那么你应该关注这个)。
GTK +似乎有一些工作,让你检测哪个鼠标点击(GdkEvent.gdk_event_get_device),但我不知道什么时间表是为了得到一个完整的稳定版本。 我也不知道Qt4与它有多远。 所以总的来说,情况是:如果你愿意把时间花在抓取,编译和修复的时候,那么它的工作原理就可以实现,但是对于主流的Linux来说并不顺利。
为了什么是值得的,我想我找到了我的问题的答案。
bobince提到xorg让我看看/etc/X11/xorg.conf 。 结果是充满了评论
# commented out by update-manager,HAL is now used
我之前听说过HAL,而不是在2001年 。 我尝试了man -k hal ,发现了lshal ,在我的电脑中列出了133个(!)HAL设备。 在我的一只老鼠的入口处,我发现了
linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:0b.0/usb2/2-7/2-7:1.0/input/input6/event6'
这原来是文件系统中的一个目录。 从那里探索,我发现了一个参考/dev/input/mouse3 。 实际上,我所有的鼠标都坐在/ dev / input中!
穿着我的超级用户斗篷,我能够读取/ dev / input / mouse3:
root@carl-ubuntu:/dev/input# od -t x1 -w6 mouse3 0000000 09 00 00 08 00 00 *
所以结果是一致的和可重复的,鼠标点击是09 00 00 08 00 00 。
结论:我可以从/ dev / input / mouseX中读取鼠标点击。 对这些文件做了chmod a+r ,我甚至可以从一个普通的用户帐户读取它们。 我需要找出一种办法来阻止可能是醉酒的人手中的4只老鼠直接与GUI进行交互,但这是另一天的问题。
我不太确定从哪里开始,但对于我来说听起来很像是多点触摸工作。 也许开始寻找Linux的多点触摸驱动程序?
另外,luvieere的第一个链接可能会有所帮助。