我有一个带有闪存的USB设备,看起来像是一台PC的USB FAT16闪存驱动器。该设备存储VB.net产品支持软件文件。
作为闪存更新过程的一部分,设备固件会重新格式化闪存并设置介质更改状态。通过Win 8.1 Win XP刷新设备文件系统,设备显示为空驱动器。从那里我们复制。效果很好。
Windows 10(自周年纪念日更新以来)不关注媒体更改状态。设备重新格式化后,Win 10仍显示已擦除的所有文件。此时复制文件失败。恢复的唯一方法是拔下插头,然后插上USB连接器。我尝试过使用我的应用中的DeviceIoControl(IOCTL_INTERNAL_USB_CYCLE_PORT)
。这有时只会起作用。
有没有更好的方法以编程方式强制Win 10刷新设备中USB闪存的视图而不拔掉它?