如何使用C#检索闪存驱动器的制造商属性

问题描述:

我需要使用C#编程语言检索闪存驱动器的Manufacturer属性。我在这里尝试了建议的解决方案(how to determine USB Flash drive manufacturer?),但这似乎不起作用。我为Manufacturer属性获得了“标准磁盘驱动器”。有谁知道如何获得制造商属性的价值'SanDisk',如下面在C#中看到的?如何使用C#检索闪存驱动器的制造商属性

enter image description here

+1

我会建议使用WMI代码造物主从http://www.microsoft.com/en-us/download/details.aspx?id=8572来检查该驱动系统的性能。它还会生成代码,然后您可以进一步调整以适应您的需求。 – Rich 2013-04-10 23:49:54

+0

btw你是什么意思,它不工作? – eandersson 2013-04-11 00:00:05

+0

@eandersson:我收到'标准磁盘驱动器'。 – ytw 2013-04-11 00:18:45

你应该能够做一些简单的像这样得到制造商的数据假设它包含除了通用(Standard disk drives)

ManagementObjectSearcher search = new 
    ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive"); 

foreach(ManagementObject wmi in search.Get()) 
{ 
    Console.WriteLine(wmi["Manufacturer"].ToString()); 
} 

您将需要一个引用添加到System.Management东西你的项目也能够使用这些功能。

作为一种替代方案,您可以使用黑客技巧,基本上获取模型的名称并将其拆分,以便仅使用制造商名称。

Console.WriteLine(wmi["Model"].ToString().Split()[0]);