如何通过C#中的驱动器号获取Win32_DiskDrive数据? 现在我有了这个:
ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2", "SELECT SerialNumber,DeviceID, PNPDeviceID, Caption FROM Win32_DiskDrive WHERE InterfaceType='USB'");
ManagementObjectCollection drive = searcher.Get();
我确定我需要在查询中添加AND to WHERE语句,但我不知道如何形成它。 DeviceID不起作用。
答案 0 :(得分:0)
我在诊断应用程序中做同样的事情。我会看看哪些是字符串,boolean,int等。并创建一个iDictionary并将其编程到每个。
如果你看看你所做的所有事情的msdn,它会说出每一个是什么。
我遇到了电池,例如我必须使用提供的代码创建字典列表。
要提取值,您必须查看流程代码
示例:
1 =电池很关键。 2 =电池正在充电。
或者它会有一个Ox12,你还必须确保它们不会过时。如果我没有弄错,DeviceID已经过时了。你的代码应该是这样的例子:
private void GetBatteryStatus()
{
System.Management.ManagementClass wmi = new System.Management.ManagementClass("Win32_Battery");
var allBatteries = wmi.GetInstances();
foreach (var battery in allBatteries)
{
int estimatedChargeRemaining = Convert.ToInt32(battery["EstimatedChargeRemaining"]);
if (estimatedChargeRemaining == 80)
{