如何获取我正在处理的硬盘的序列号?

如何获取我正在处理的硬盘的序列号?

为了获取我的计算机中所有硬盘的序列号,我使用:

wmic diskdrive get serialnumber

但是,我想获取我正在工作的硬盘的序列号。

我解释一下:我有 2 个硬盘,其中一个有 2 个分区 C 和 D。另一个有一个分区 E。使用命令行,如果我在 C 分区中工作,当我键入命令时wmic,我只想获取具有此分区的硬盘的序列号,而不是具有 E 分区的硬盘的序列号。

我想为我的软件制作一个许可证代码。您可以在任何分区中安装该软件。我想要包含这些分区的硬盘的序列号。当您格式化、重新安装等时,分区的卷序列号会发生变化,但硬盘的序列号不会改变。我知道有软件可以更改序列号,但我的潜在客户并不那么聪明。

答案1

感谢大家的回复。我找到了我需要的答案,在这里与大家分享。命令在 powershell 中:

Get-Disk (Get-Partition -DriveLetter 'C').DiskNumber

输出如下:

Number Friendly Name Serial Number  HealthStatus OperationalStatus       Total Size Partition Style
------ ------------- -------------------------------------------------- 
0      ST3802110AS    5LR2DQ65       Healthy          Online               74.53 GB    MBR

答案2

这是我编写的 Powershell 脚本,希望它可以满足您的要求。

  1. 打开 Powershell
  2. 复制并粘贴此内容:
$volumes = get-wmiobject Win32_Volume
foreach ($vol in $volumes) 
  {
    if($vol.Caption -eq 'c:\')
      {
        $vol | fl Caption,Name,DeviceID,SerialNumber 
      }
  }
pause

这应该可以让你获得与 C:\ 驱动器相关的所需信息。如果你想要不同的驱动器号,只需在上面脚本的第 4 行中更改它即可c:\

输出将看起来像:

Caption      : C:\
Name         : C:\
DeviceID     : \\?\Volume{770f1368-bacc-4401-98db-a6c43bc4ef11}\
SerialNumber : 3469401274

笔记:如果您想要所有可用的驱动器信息而不仅仅是这 4 个信息,您可以| fl Caption,Name,DeviceID,SerialNumber从上面删除并只保留$vol该行。

相关内容