如何检查硬盘是Sata设备还是使用c#的IDE设备

时间:2016-05-05 11:21:16

标签: c# .net winforms hardware hard-drive

我有SATA硬盘,我想通过C#windows窗体检测。我想显示它是SATA或IDE驱动器。我使用以下代码,但它总是返回IDE但它应该返回SATA。所以任何人都可以帮助我解决我错的地方。

WqlObjectQuery q = new WqlObjectQuery("SELECT * FROM Win32_DiskDrive");
ManagementObjectSearcher res = new ManagementObjectSearcher(q);

foreach (ManagementObject o in res.Get())
 {
  string lblInterface= o["InterfaceType"].ToString();
 }

2 个答案:

答案 0 :(得分:1)

根据Win32_DiskDrive班级documentationInterfaceType的可能值为:

SCSI

HDC

IDE

USB

1394

因此,你不会看到SATA。

但是,Caption属性可能包含有关驱动器的额外信息。您可以解析它以查找它是否包含ATA或SCSI。

答案 1 :(得分:1)

检查caption的{​​{1}}属性,了解字符串ATA

来自MSDN Caption 数据类型:字符串 访问类型:只读 限定符:MaxLen(64),DisplayName(“标题”) 对象的简短描述

win32_DiskDrive