kokoromi 发表于 2019-12-25 09:34:19

如何区分USB存储设备是U盘还是移动硬盘?

有个项目需要根据插入USB设备的类型进行判断区分,想问一下,如何判断插入的USB设备是U盘还是移动硬盘,这个类型信息能通过USB的枚举或者MSC的数据交互获取吗?还是说通过文件系统获取?具体该如何操作呢?
(就像电脑上的那样,插入U盘和移动硬盘显示的图标和位置不一样)

eric2013 发表于 2019-12-25 10:06:39

这个就是枚举过程中,USB描述符体现的。

kokoromi 发表于 2019-12-25 10:16:56

eric2013 发表于 2019-12-25 10:06
这个就是枚举过程中,USB描述符体现的。

多谢,找到了。
顺便问一下,在电脑上鼠标点击状态栏中的存储设备进行安全移除的时候,USB主机发送了什么命令到设备,告知设备被移除?还有,电脑上弹出警告,设备无法移出,这个时候主机和设备都发送了什么命令?我用分析仪没看到主机和设备发送命令...很奇怪。

eric2013 发表于 2019-12-25 10:20:10

kokoromi 发表于 2019-12-25 10:16
多谢,找到了。
顺便问一下,在电脑上鼠标点击状态栏中的存储设备进行安全移除的时候,USB主机发送了什 ...

用USB抓包软件看下。

kokoromi 发表于 2019-12-25 10:42:26

eric2013 发表于 2019-12-25 10:20
用USB抓包软件看下。

用USB分析仪和USBLyzer看过了,没发现有命令交互,不知道电脑端怎么实现的...

eric2013 发表于 2019-12-25 10:48:46

kokoromi 发表于 2019-12-25 10:42
用USB分析仪和USBLyzer看过了,没发现有命令交互,不知道电脑端怎么实现的...

板子搞个模拟U盘的例子,试试。
页: [1]
查看完整版本: 如何区分USB存储设备是U盘还是移动硬盘?