获取“外接”硬盘硬盘物理序列号!

zlmzhuanjia 2009-06-02 03:09:53
如题:我需要获取外接硬盘的物理序列号,本机硬盘的我能获取!请看清题目,谢谢!
使用DeviceIoControl调用IOCTL_CHANGER_GET_PRODUCT_DATA和IOCTL_STORAGE_GET_MEDIA_SERIAL_NUMBER都不支持请求!项目的需求中需要获取多个未初始化的外接硬盘的物理序列号,看了很多帖子,我尝试了很多方法都不能成功,请各位高手指教!谢谢~
请列出有效方法,谢谢!
...全文
174 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
zlmzhuanjia 2009-06-04
  • 打赏
  • 举报
回复
谢谢大家了,虽然还没找到有效方法,但帖子还是要结的...
cheidtf 2009-06-04
  • 打赏
  • 举报
回复
看来,这种方法行不通啊!
通过USB端口逐个扫描,系统会为第个设备分配一个唯一的设备ID。
通过设备管理器可以看到每个设备的ID。
比较难的应该是,多个磁盘格式化完以后。如何知道哪个好,哪个是坏的?毕竟系统得到的设备ID都临时分配。
很难与外接的磁盘对应。
whoo 2009-06-03
  • 打赏
  • 举报
回复
如果外接硬盘指的是USB移动硬盘的话,恐怕也是踢到了石头。

USB移动硬盘采用的是统一的usb storage mass驱动,其通讯协议接近于SCSI。并且这一通用的驱动适用于很多的设备,如闪存。所以也不大可能携带或者传输IDE硬盘特定的信息。

自己写个外接硬盘驱动,应该是最后的保证了。

http://bbs.et8.net/bbs/showthread.php?t=543340

zlmzhuanjia 2009-06-03
  • 打赏
  • 举报
回复
这个是为工厂量产做的,他们的一定会有序列号,所以不用担心这个问题,目前我尝试了6,7中方法考虑了10来种,有一种方法就是通过芯片firmware传输出来,但是这是要在修改firmware的情况下,目前还没采用,请各位高手看能想出其他方法不?...
whoo 2009-06-03
  • 打赏
  • 举报
回复
呃,恐怕得破下凉水。硬盘的物理序列号,并不是所有的硬盘都有的。

根据很久以前的资料, SCSI硬盘是肯定没有序列号的;IDE硬盘绝大部分都有,一部分(但不确定是那些)没有。SATA硬盘太新了,不知道是什么情况。

fandh 2009-06-02
  • 打赏
  • 举报
回复
学习一下
jamesking 2009-06-02
  • 打赏
  • 举报
回复
试一下WMI

2,640

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 硬件/系统
社区管理员
  • 硬件/系统社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧