Проблема : В Windows 10 я запрашиваю WMI, используя C # в пространстве имен Root\Microsoft\Windows\Defender
для класса MSFT_MpComputerStatus
, чтобы получить полезную информацию о состоянии антивируса компьютера ( см. Эту ссылку ).Это происходит потому, что от Windows 8.1 до самой последней Windows пространство имен существует, как это видно на этом снимке экрана
...
private private const string WMIWindowsDefenderNameSpace = @"Root\Microsoft\Windows\Defender";
private const string MpComputerStatus = "MSFT_MpComputerStatus";
...
...
// And some lines later
var status QueryWMI(WMIWindowsDefenderNameSpace, MpComputerStatus);
Однако в Windows 7 все работает не так, потому чтокак видно на этом снимке экрана пространство имен Root\Microsoft\Windows\Defender
не существует, поэтому приведенный выше фрагмент выдаст мне исключение, в котором будет указано "Invalid Namespace"
Вопрос :Как мне программно прочитать информацию, эквивалентную той, которая содержится в классе MSFT_MpComputerStatus
, если в Windows 7 такой вещи нет?