Как получить доступность от Win32_PnPEntity - PullRequest
0 голосов
/ 30 мая 2019

Я пытаюсь получить статус доступности с устройства 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...");

foreach(device in collection)
{
     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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...