【问题标题】:Serial Number of Bootable device [closed]可启动设备的序列号[关闭]
【发布时间】:2019-11-02 00:34:43
【问题描述】:

我必须获取安装我的操作系统的磁盘的序列号。

我知道为了获得我需要运行的序列号:

>wmic diskdrive get serialnumber,capabilities
Capabilities  SerialNumber
{3, 4}        AI92NXXXXXXXX2G02
{3, 4, 7}     1172XXXXXX030

没有属性可以检查该磁盘上是否安装了操作系统。

【问题讨论】:

  • 检查操作系统是否安装在特定的磁盘驱动器上?我怀疑是否可以使用wmi。但是,您可以检查从 (wmic OS get BootDevice,SystemDevice,SystemDirectory) 引导运行的 Windows 实例的位置以及来自 wmic path Win32_BootConfiguration get /value 的更多信息...
  • 基本上我想找到安装操作系统的磁盘的序列号
  • 我厌倦了wmic partition where Bootable=True,然后尝试回溯到磁盘没有帮助
  • 我不明白为什么这个问题被关闭了。非常切题。

标签: windows hard-drive wmic


【解决方案1】:

开始使用wmic partition where Bootable=True,然后回溯到Win32_DiskDrive(一种可能的方法):

@ECHO OFF
SETLOCAL EnableExtensions DisableDelayedExpansion
for /F "delims=" %%G in ('
  wmic path Win32_DiskPartition where "Bootable=True" get DeviceID /Value
') do ( 
  for /F "tokens=1* delims==" %%g in ("%%G") do (
    set "_DiskPartition=%%h"
    REM ECHO set "_DiskPartition=%%h"
    call :GetDiskDriveIdAndOutput
  )
)
echo Possibly no linkage to a logical disk:
2>NUL wmic path Win32_LogicalDisk ^
  ASSOC /RESULTROLE:Antecedent ^
        /ASSOCCLASS:Win32_LogicalDiskToPartition ^
        /RESULTCLASS:Win32_DiskPartition  
ENDLOCAL
goto :eof

:GetDiskDriveIdAndOutput
for /F tokens^=^2^ delims^=^" %%B in ('          
    wmic path Win32_DiskPartition where "Bootable=True" ASSOC /ASSOCCLASS:Win32_DiskDriveToDiskPartition
  ') do (
      if NOT "%%B"=="%_DiskPartition%" (
        REM ECHO set "_DiskDriveId=%%B"
        set "_DiskDriveId=%%B"
      )
)
echo Bootable: Drive = "%_DiskDriveId:\\=\%", Partition = "%_DiskPartition%"
wmic path Win32_DiskDrive get Capabilities,DeviceId,SerialNumber
REM wmic path Win32_DiskDrive Where "DeviceId='%_DiskDriveId%'" get Capabilities,DeviceId,SerialNumber
goto :eof

当然,从实际输出

可以改进
Bootable: Drive = "\\.\PHYSICALDRIVE0", Partition = "Disk #0, Partition #0"
Capabilities  DeviceID            SerialNumber
{3, 4}        \\.\PHYSICALDRIVE0  NXXXXXXXXK4R2DT
{3, 4, 7}     \\.\PHYSICALDRIVE1  S0NFJNXXXXXXXX

类似

Capabilities  DeviceID            SerialNumber      Bootable
{3, 4}        \\.\PHYSICALDRIVE0  NXXXXXXXXK4R2DT   True
{3, 4, 7}     \\.\PHYSICALDRIVE1  S0NFJNXXXXXXXX  

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-11
    • 2015-06-04
    • 2014-03-29
    • 1970-01-01
    • 2018-04-13
    • 2012-12-10
    • 2013-03-26
    • 1970-01-01
    相关资源
    最近更新 更多