如何从Win32_PnPEntity获取可用性

时间:2019-05-30 20:25:44

标签: c# wmi

我正在尝试从PnP设备获取可用性状态 我已经阅读了这篇文章:Win32_PnPEntity,似乎我应该能够获得价值;但是它总是空值,我不知道为什么。其他属性,例如“名称”,“标题”,“ ClassGUID”等,都返回良好的值。

这是一些代码,显示我要做什么...

ManagementObjectCollection collection;
using (var searcher = new ManagementObjectSearcher(@"SELECT * FROM Win32_PnPEntity WHERE Description LIKE '%USB%'"))
     collection = searcher.Get();

Console.WriteLine("Waiting for CmdPort to be available...");

var availableTimeout = 50;
while (availableTimeout > 0)
{                              
    var availability = device["Availability"] ?? -1;
    if((int)availability == 3)
       break;
    Console.WriteLine($"Availability = {availability.ToString()} (timeout = {availableTimeout})")
    availableTimeout--;
    Thread.Sleep(100);
}

我希望uint16会在1到21之间恢复正常

0 个答案:

没有答案