我想知道Windows生成的卷号和由其供应商分配的HDD的硬件序列号之间是否有任何关系?
问题是我们已经分发了一种软件,其中许可方法基于Windows卷号,但每次重新安装Windows时,即使在同一台计算机上也会发生变化。
我们试图找出一种在Windows重新安装后验证卷号的方法,以防每次使用相同的系统硬件。
答案 0 :(得分:1)
不,它与硬盘序列号无关。它只是每种格式生成的任意数字。
主引导记录中存在一个名为DiskID的数量变化较小但在重新创建MBR时也会发生变化(例如防病毒修复或只是一些低级别操作)。但是,您可以使用Windows中的diskpart
命令使用命令select disk 0
,uniqueid disk
来读取它。
作为可行选项,您可以使用IOCTL_STORAGE_QUERY_PROPERTY
和StorageDeviceUniqueIdProperty
作为STORAGE_PROPERTY
向给定设备发送DeviceIoControl()
请求,并检索唯一标识符。
另一种选择是使用user PnP API枚举设备并使用PnP标识符来唯一标识磁盘。
还可以选择查询Win32_PhysicalMedia
类的WMI,但我不确定它有多可靠。
我相信所有解决方案都需要管理权限。
答案 1 :(得分:0)