C# 有哪些常见的WMI查询

C# 有哪些常见的WMI查询,c#,wmi,wmi-query,C#,Wmi,Wmi Query,我正在构建一个C监视器应用程序,它使用WMI获取远程计算机的一些性能细节。有哪些好的WMI查询可以获取有用的统计信息,如CPU负载、RAM使用率、HDD可用空间等 例如,您可以使用查询SELECT*from Win32_Processor从属性LoadPercentage获取CPU负载 还有哪些其他有用的属性和查询?我认为这有点复杂,特别推荐几个类,因为WMI非常广泛,并且取决于您希望获取的信息类型 我的建议是,您可以看到以下链接 你会很感激的。组织得很好。我从那个网站上得到了你提到的上述统计数

我正在构建一个C监视器应用程序,它使用WMI获取远程计算机的一些性能细节。有哪些好的WMI查询可以获取有用的统计信息,如CPU负载、RAM使用率、HDD可用空间等

例如,您可以使用查询SELECT*from Win32_Processor从属性LoadPercentage获取CPU负载


还有哪些其他有用的属性和查询?

我认为这有点复杂,特别推荐几个类,因为WMI非常广泛,并且取决于您希望获取的信息类型

我的建议是,您可以看到以下链接


你会很感激的。组织得很好。我从那个网站上得到了你提到的上述统计数据的所有查询,基本上只是复制和粘贴。

有几个类用于满足你的要求。我认为一个很好的开始是将静态类与性能类分开

静止的

计算机系统-Win32_计算机系统 操作系统-Win32_操作系统 处理器信息-Win32\U处理器 硬盘驱动器-Win32_磁盘驱动器 磁盘分区-Win32\U磁盘分区 逻辑磁盘-Win32_LogicalDisk 逻辑磁盘到分区-Win32_LogicalDisk分区 内存-Win32_PhysicalMemory,Win32_PhysicalMemoryArray 网络-Win32\U NetworkAdapter如果调用太频繁,该类将有很高的cpu代价,Win32\U NetworkAdapter配置 性能计数器

处理器利用率-Win32_PerfRawData_PerfOS_处理器 内存利用率-Win32_PerfRawData_PerfOS_内存 网络利用率-Win32_PerfRawData_Tcpip_网络接口
还有很多,但这些将满足您的要求。

您也可以使用Win32_产品


这将为您提供机器上安装的所有软件。您可以使用WMI修复/卸载这些产品。在远程机器上非常有用。

我喜欢查询系统正常运行时间,但这是我对Linux的偏见。这就是问题所在,它太广泛了,很难找到相关数据。我正在寻找cpu负载/ram使用率/hdd可用空间等统计数据,几乎任何计算机用户都能理解。与性能相关的统计数据。甚至是一般信息。计算机正常运行时间、网络使用情况、pc上的当前时区/时钟时间。任何易于解释且可能用于诊断或一般监控的内容。此类内容确实会带来高性能损失。在HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\查询注册表项是一个不错的选择。