如何将 SATA HBA 关联到物理磁盘

如何将 SATA HBA 关联到物理磁盘

诚然,我对整个 WMI“事物”非常陌生。这个“事物”令人不知所措,目前我找不到问题的答案。我使用 找到了系统中驱动器的最佳信息Win32_DiskDrive。该PNPDeviceID字段甚至似乎对特定 SATA 驱动器连接到其 HBA 的端口号进行编码。但是,我如何将特定驱动器链接到其 HBA?类中的任何字段Win32_DiskDrive似乎都不包含此信息。我知道它连接到我的 MB 上的 Intel HBA。例如,PNPDeviceID我的启动盘的字段:

PNPDeviceID IDE\DISKWDC_WD2500AAKS-00L9A0___________________0956____\6&C07A520&0&0.1.0

我觉得有趣的是,由于它是 SATA,WMI 类将此驱动器标识为 IDE 驱动器,但我对此并不关心。更有趣的是,我如何将此驱动器映射到其 HBA?是否有一个 WMI 类具有我感兴趣的特定字段?

另外一个问题是,在上面的文字中,我如何解释第二个\字符后的值?

答案1

您必须查看父级。我不确定它在 WMI 中是如何显示的,但设备管理器 API 提供了CM_Get_Parent

答案2

当 Dependent 是具有给定 PNPDeviceID 的 Win32_PNPEntity 实例时,CIM_ControlledBy 应该将控制器作为 Antecedent 提供给您,即

select DeviceID from Win32_PNPEntity where PNPDeviceID = '...'
associators of {Win32_PNPEntity.DeviceId = '...'} where AssocClass = CIM_ControlledBy

相关内容