我在c#语言中使用wmi objecrs。我如何获得CPU Temp?我的代码:
我的选择查询返回空值,并且foreach无效,因为我的搜索器对象为空。
试 { ManagementObjectSearcher搜索者= 新的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但我收到了错误。
最好的问候
答案 0 :(得分:2)
CurrentReading
。
Win32_TemperatureProbe
WMI类提供的大多数信息来自SMBIOS。无法从SMBIOS表中提取CurrentReading
属性的实时读数。因此,WMI的当前实现不会填充CurrentReading
属性。CurrentReading
属性的存在留作将来使用。