在.net中列出模式信息的WMI

本文关键字:信息 WMI 模式 net | 更新日期: 2023-09-27 18:08:59

我正在尝试使用c#列出WMI类上所有可用的字段。

我得到的最接近的是列出WMI

中所有可用的等价表
ManagementObjectSearcher searcher = new ManagementObjectSearcher("select * from meta_class");
 foreach (ManagementClass wmiClass in searcher.Get())
 {
     Console.WriteLine(wmiClass["__CLASS"].ToString());
 }

然而,对于字段似乎没有等效的

这是可能的还是只是查找参考手册以查看所有可用字段的情况?

在.net中列出模式信息的WMI

如果你有一个WMI类的实例,那么System.Management.ManagementBaseObject.Properties是所有属性的列表(WMI不分离属性和字段-基于COM它们都是属性)。

ManagementClass来自ManagementBaseObject,所以它也有一个Properties属性,列出了WMI类的属性,所以要列出所有的属性:

var wmiClass = new ManagementClass("Win32_ComputerSystem");
foreach (var prop in wmiClass.Properties) {
  Console.WriteLine(prop.Name);
}

(Properties集合的每个元素都是一个PropertyData实例,其中包含关于每个属性的大量信息)