当用户在Linux平台上插入或删除CD时,是否有干净的方式来检测或接收事件?
光盘里面的Windows CMD,如何恢复到原来的目录?
在Linux中检测CDROM介质移除/插入的最简单方法是什么?
在Win7 / 8上从CD或USB自动运行程序
将Windows CDROM驱动器视为阻止文件?
c ++检查光盘状态
Udev监视硬件并将事件转发给dbus。 你只需要一些dbus监听器。 使用dbus-monitor工具进行快速检查可以在我的系统中看到:
dbus-monitor – 系统
signal sender=:1.15 -> dest=(null destination) serial=144 path=/org/freedesktop/Udisks; interface=org.freedesktop.Udisks; member=DeviceChanged object path "/org/freedesktop/Udisks/devices/sr0"
这是来自Udisks的DeviceChanged事件,并且包含设备路径。
因此,无论您需要哪种支持dbus绑定的编程语言,都可以监听这些(系统总线)事件。
传统上一直有这个HAL (硬件抽象层),但网页说
HAL处于维护模式 – 不添加任何新功能。 所有未来的发展侧重于udisk,UPower和堆栈的其他部分。 有关更多信息,请参阅软件/ DeviceKit。
和DeviceKit页面列表
udisks,用于处理存储设备的D-Bus接口
所以udisk可能应该是你所要求的。
我能找到的最好的方法是Halevt。 Halevt显然是比直接使用HAL更高层次的抽象。 它使用基于XML的配置文件,可能会或可能不符合您的喜好。 配置文件属性文档有点缺乏。 这里列出了所有支持的属性列表:
http://www.marcuscom.com/hal-spec/hal-spec.html
另外,链接到Halevt: http ://www.nongnu.org/halevt/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。