Linux下如何用QT检测到U盘已经插入,并实现mount与umount
因为开发一个自动插入U盘就自动复制,并且要能在复制开始前先对U盘进行格式化。
想让Linux先对U盘进行格式化,然后再对U盘进行加载,加载完成后开始复制,复制完成后自动卸载。
想让Linux先对U盘进行格式化,然后再对U盘进行加载,加载完成后开始复制,复制完成后自动卸载。
解决方法,使用qt自带的QDBus可以实现,下面为连接代码,当系统有设备插入时,可以调用slotDeviceAdded函数。
Copy code
QDBusConnection::systemBus().connect( "org.freedesktop.Hal",
"/org/freedesktop/Hal/Manager",
"org.freedesktop.Hal.Manager",
"DeviceAdded",
this,
SLOT(slotDeviceAdded(QString )));
QDBusConnection::systemBus().connect( "org.freedesktop.Hal",
"/org/freedesktop/Hal/Manager",
"org.freedesktop.Hal.Manager",
"DeviceAdded",
this,
SLOT(slotDeviceAdded(QString )));