3

我在 c# 语言中使用 wmi 对象。如何获得 CPU Temp ?我的代码:

我的 Select 查询返回空值并且 foreach 不起作用,因为我的搜索器对象为空。

尝试 { ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\CIMV2", "SELECT * FROM Win32_TemperatureProbe");

        foreach (ManagementObject queryObj in searcher.Get())
        {
            Console.WriteLine("-----------------------------------");
            Console.WriteLine("Win32_TemperatureProbe instance");
            Console.WriteLine("-----------------------------------");
            Console.WriteLine("CurrentReading: {0}", queryObj["CurrentReading"]);
        }
    }
    catch (ManagementException)
    {

    }

请给我澄清代码。我在谷歌搜索,但我找不到任何好的代码。我使用 MSAcpi_ThermalZoneTemperature 但出现错误。

此致

4

1 回答 1

2

CurrentReading当前版本中未实现。

文档中:

WMI 类提供的大部分信息Win32_TemperatureProbe来自 SMBIOS。CurrentReading无法从 SMBIOS 表中提取该属性的实时读数。因此,WMI 的当前实现不填充该CurrentReading属性。该CurrentReading物业的存在是为将来使用而保留的。

于 2013-06-03T14:12:36.063 回答