通过WMI读取磁盘驱动器属性

时间:2009-02-04 04:31:16

标签: registry wmi hard-drive disk

我正在使用WMI查询某些属性磁盘驱动器。 WMI是从驱动器本身读取此信息还是查询注册表?如何直接从驱动器中读取属性?

3 个答案:

答案 0 :(得分:1)

Win32_LogicalDisk Class必须查询实际的驱动器。我在powershell中使用它来显示驱动器的使用情况,该注册表中没有包含它。

答案 1 :(得分:1)

它不一定是单一来源。如果WMi类的属性具有MappingStrings限定符,则可以在那里找到属性的源。例如:

Win32_LogicalDisk.VolumeName - Win32API |文件系统函数| GetVolumeInformation

Win32_LogicalDisk.MediaType - Win32API |设备输入和输出函数| DeviceIoControl

Win32_LogicalDisk.NumberOfBlocks - MIB.IETF | HOST-RESOURCES-MIB.hrStorageSize

所以它似乎主要是Win32 API和MIB

答案 2 :(得分:1)

WMI直接查询驱动器。特别是,Win32_DiskDriveWin32_LogicalDisk类将查询有关驱动器的各种属性。 DiskDrive查询物理属性和配置,而LogicalDisk查询驱动器本身的卷和分区(如C:等)。并非所有WMI属性都将为特定驱动器设置;驱动器可能不支持某些驱动器。

Microsoft实用程序

Scriptomatic可以编写一个快速脚本来提取每个类的所有属性,如果您想要检查它,以及您可能希望与WMI相关的任何其他内容。它甚至可以在Perl中实现!