当前位置:  开发笔记 > 后端 > 正文

获取IDE和SATA的H/D序列号(非Volumn序列号)

如何解决《获取IDE和SATA的H/D序列号(非Volumn序列号)》经验,为你挑选了1个好方法。

如何在VB.NET中读取IDE和SATA驱动器的硬盘序列号?(我不想要卷序列号).

如果没有管理权限,应该为XP和Vista收集此信息.



1> Phaedrus..:

您可以像这样使用WMI(Windows Management Instrumentation):

Dim mos As New ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia")

For Each mo As ManagementObject In mos.Get()
    Dim serial As String = mo("SerialNumber").ToString()
Next

虽然,我已经阅读过使用WMI没有返回序列号的情况.实现此目的的另一种方法是通过平台调用服务(PInvoke).

该文章包含在作者实现下载的CreateFile()和DeviceIoControl的()通过互操作服务在VB .NET中提取驱动器的信息.

要使用上述任何一种方法,您将需要ADMIN权限,可以在此处找到一个似乎可以绕过此实用程序的实用程序.如果您喜欢冒险,可以使用C++/Win32 源代码进行细读.(查看函数'ReadPhysicalDriveInNTWithZeroRights()')

推荐阅读
惬听风吟jyy_802
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有