2015-03-17 7 views
0

Я хотел бы сделать запрос wmi в cs для запуска OID NDIS.Использование wmi для запуска запросов OID в драйвере NDIS

Например, для проверки состояния аппаратных средств (OID_GEN_HARDWARE_STATUS) можно использовать ManagementObjectSearcher("root\\WMI", "SELECT * FROM MSNDIS_HardwareStatus")

мне нужно сделать некоторые другие запросы, но я не могу найти способ, чтобы найти имя Wmi класса для данного OID (скажем, это OID_802_3_RCV_OVERRUN, нет никакого очевидного отношения, такого как OID_GEN_HARDWARE_STATUS -> MSNDIS_HardwareStatus для него, по крайней мере, я его не нашел).

Как найти отношения между именем класса wmi и OID NDIS? Есть ли для этого документация?

ответ

0

Конкретный пример, который вы цитируете, OID_802_3_RCV_OVERRUN, не имеет соответствующего класса WMI. Вот один из способов доказать это, если вам удобно использовать отладчик ядра.

  1. Выполните команду отладчика ядра !ndiskd.miniport -wmi <someHandle>
  2. Поиск вывода текста для «OID_802_3_RCV_OVERRUN»
  3. Там нет ни одного совпадения, так минипорт не подвергает, что OID для WMI

Если вы хотите скорее, не использовать отладчик ядра, или если вы просто хотите увидеть еще несколько примеров, here's an article I wrote on how to inspect the relationship between WMI classes and OIDs.