rjs*_*erg 6 c++ usb winapi removable-drive
我正在使用WM_DEVICECHANGE在新的USB驱动器连接到计算机时收到通知.这对于像拇指驱动器这样的设备非常有用,只要设备到达它就可以从中读取文件了.对于像SD卡读卡器这样的设备,它不会,因为当设备连接时,消息会被发送一次,但当用户实际将卡插入设备时,不会发送消息.
是否可以在不使用轮询的情况下检测新媒体插入现有USB设备?
几周前我刚刚这样做了.从技术上讲,RegisterDeviceNotification路线是正确的方法,但它需要相当多的工作才能正确.但是,Windows资源管理器已经为您完成了所有艰苦的工作.只需将SHChangeNotifyRegister与SHCNE_DRIVEADD/SHCNE_DRIVEREMOVED/SHCNE_MEDIAINSERTED/SHCNE_MEDIAREMOVED一起使用即可.请注意,此方法取决于Shell硬件检测服务(或其他任何调用),但它比尝试自行重新实现功能要容易得多.
| 归档时间: |
|
| 查看次数: |
6667 次 |
| 最近记录: |