2016-06-01 41 views
0

目標:在我們的嵌入式Linux系統中,我們希望使用Qt來檢測USB存儲設備的插入情況,在USB存儲設備插入或插入時通知系統,然後掛載其文件系統。稍後我們可以訪問USB存儲設備上的文件。如何檢測Qt中的USB存儲?

我搜索了一下,似乎有兩個解決方案:libusb和dbus。但我仍然不知道如何使用它。有沒有人有一些例子?

+0

USB筆應該是指針設備,不是嗎?你確定它是否安裝正確?而且由於您使用的是Linux,因此使用Xorg訪問特定的USB事件是非常可能的。我希望有人會提出一個很好的解決方案。 –

+0

@ Md.MinhazulHaque問題不是指輸入設備,而是指存儲設備,在某些地方稱爲USB筆式驅動器。 –

+0

「我搜索了一下,似乎有兩個解決方案:[...] dbus。」 DBus不是這個具體問題的解決方案,它是一個消息總線。你可能正在談論一些通過DBus進行通信的服務(可能是udisk)。 –

回答

0

auto-mount USB存儲的典型方式是通過udev。當設備被添加/安裝時,Udev可以notify you。您也可以通過dbus與udisks聯繫,以獲知存儲添加/刪除的情況。

libusb只與切線相關,除非您希望重新實現大量已經存在的代碼,否則不應該使用它。

+0

你有這樣的代碼嗎?據我所知,它是通過kernel-> hotplug-> udev-> hal/udisks-> dbus。 –

+0

@ James.Zhou我發佈的鏈接包含一些繞過dbus的例子 - 這應該足夠了。我沒有任何鏈接方便dbus示例,但谷歌應該是你的朋友。 –