问题:在Windows 10上,我使用C#在命名空间Root\Microsoft\Windows\Defender
的类MSFT_MpComputerStatus
上查询WMI,以获取有关计算机防病毒状态的有用信息({{3 }})。这是因为从Windows 8.1到最新的Windows,存在此命名空间see this link
...
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上无法正常工作,因为在此screenshot中可以看到,命名空间Root\Microsoft\Windows\Defender
不存在,因此上面的代码片段会给我一个异常,指出{ {1}}
问题:如果Windows 7之前没有此类信息,我该如何以编程方式读取与类"Invalid Namespace"
中包含的信息相同的信息?