问题描述:
最一开始检测USB移动存储设备是用的GetDriveType函数,后面发现接上移动硬盘并没有识别为可移动usb存储设备
问题原因:
是根据分区里面的信息来判别是移动硬盘或是u盘。这个函数查询并不准确
解决方法:
直接打开磁盘驱动器句柄。发送IOPC消息查询
参考链接:
需要注意的地方
1.CreateFile函数的lpFileName参数,需要考虑宽多字节的转换
https://docs.microsoft.com/zh-cn/windows/win32/api/fileapi/nf-fileapi-createfilea
2.dwDesiredAccess 参数,其实查询设备属性的一些相关信息,不给权限也是可以的。避免某些情况下访问权限没有被拒绝无法获得有效句柄的问题
https://docs.microsoft.com/zh-cn/windows/win32/api/fileapi/nf-fileapi-createfilea
代码很简单,就不上代码了
987

被折叠的 条评论
为什么被折叠?



