zblaoshu
驱动牛犊
驱动牛犊
  • 注册日期2004-08-13
  • 最后登录2005-03-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:4842回复:7

怎么得到U盘的Serial number?

楼主#
更多 发布于:2004-09-28 10:54
怎么得到U盘的Serial number?

最新喜欢:

aasa2aasa2 lixinli81lixinl...
zblaoshu
驱动牛犊
驱动牛犊
  • 注册日期2004-08-13
  • 最后登录2005-03-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-10-12 12:23
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USBSTOR\Disk&Ven_Netac&Prod_OnlyDisk&Rev_1.11\221D19FD3D8E6261&0]

221D19FD3D8E6261不是硬件ID吗?
talkxyj
驱动牛犊
驱动牛犊
  • 注册日期2001-03-23
  • 最后登录2009-08-16
  • 粉丝1
  • 关注1
  • 积分12分
  • 威望21点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-10-12 03:55
获取u盘的sn是一件不太愉快的事。
1.大多数u盘(硬盘,flash闪盘)作为usb设备,并没有提供usb协议中建议设置的sn,此路不通;

2.芯片的Sn?怎么读?读了一家还有别人家呢...

3.xp下可以用IOCTL_DISK_GET_DRIVE_GEOMETRY_EX来得到移动硬盘的disk GUID,但是flash闪盘,因为容量小,大多没有MBR,基本也不能靠这个读sn;

4.权宜之计可以读u盘的分区序列号,但是格式化后会变,某些场合也可以用这个了。

5.自己写了。
zblaoshu
驱动牛犊
驱动牛犊
  • 注册日期2004-08-13
  • 最后登录2005-03-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-10-11 14:55
"用这个GUID:53f56307-b6bf-11d0-94f2-00a0c91efb8b
然后详细代码好多别的帖子有写的。主要用这几个函数
首先 SetupDiGetClassDevs
然后 SetupDiEnumDeviceInterfaces
再 SetupDiGetDeviceInterfaceDetail可以得到一个设备路径,用这个设备路径可以CreateFile打开设备得到句柄,然后用这个句柄用DeviceIoControl函数就可以得到你要的这个Serial number了"
我也用到这些了,结构:IOCTL_STORAGE_QUERY_PROPERTY,可是不知道为什么就是得不到U盘的Serial number,非常郁闷,请大家帮忙。
freeyoung
驱动牛犊
驱动牛犊
  • 注册日期2002-10-19
  • 最后登录2004-11-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-10-10 11:10
可以获取String描述符,在Device描述符中有一项iSerialNumber,就是指明String描述符中表示SerialNumber的索引号
但是String描述符是可选项,设备有可能不提供
具体可以参考标准的第九章9.6小节
cecily
驱动牛犊
驱动牛犊
  • 注册日期2004-08-04
  • 最后登录2013-05-16
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望86点
  • 贡献值1点
  • 好评度14点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-10-10 10:33
用这个GUID:53f56307-b6bf-11d0-94f2-00a0c91efb8b
然后详细代码好多别的帖子有写的。主要用这几个函数
首先 SetupDiGetClassDevs
然后 SetupDiEnumDeviceInterfaces
再 SetupDiGetDeviceInterfaceDetail可以得到一个设备路径,用这个设备路径可以CreateFile打开设备得到句柄,然后用这个句柄用DeviceIoControl函数就可以得到你要的这个Serial number了




[编辑 -  10/10/04 by  cecily]
我不是你的天使,我不懂你的天堂
zblaoshu
驱动牛犊
驱动牛犊
  • 注册日期2004-08-13
  • 最后登录2005-03-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-10-10 10:08
怎么没有人回答?
zblaoshu
驱动牛犊
驱动牛犊
  • 注册日期2004-08-13
  • 最后登录2005-03-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-09-28 10:56
怎么用VC得到U盘的Serial number?
游客

返回顶部