c# - 为什么 ThermalZoneInformation 不返回真实温度?
问题描述
复制(或不复制):
using System;
using System.Management;
using System.Windows.Forms;
namespace WMISample
{
public class MyWMIQuery
{
public static void Main()
{
try
{
ManagementObjectSearcher searcher =
new ManagementObjectSearcher("root\\CIMV2",
"SELECT * FROM Win32_PerfFormattedData_Counters_ThermalZoneInformation");
foreach (ManagementObject queryObj in searcher.Get())
{
Console.WriteLine("-----------------------------------");
Console.WriteLine("Win32_PerfFormattedData_Counters_ThermalZoneInformation instance");
Console.WriteLine("-----------------------------------");
Console.WriteLine("HighPrecisionTemperature: {0}", queryObj["HighPrecisionTemperature"]);
}
}
catch (ManagementException e)
{
MessageBox.Show("An error occurred while querying for WMI data: " + e.Message);
}
}
}
}
或:(这也是获取此代码的方法)
- 从此处下载 Microsoft WMI 代码创建器: https ://www.microsoft.com/en-us/download/details.aspx?id=8572
- 在“类(动态或静态)”中向下滚动到:
Win32_PerfFormattedData_Counters_ThermalZoneInformation
HighPrecisionTemperature
在下一个框中选择。- 单击
Search for Property Values
按钮。
我的结果总是:3030、3010 和 2900 [我知道这些是开尔文度数的十分之一。问题是代码总是返回这些值,尽管温度显然不会保持不变(并且达到十分之一摄氏度!)。]
什么可能导致系统总是返回这些结果而不是真实结果?
处理器:i5 9600K
主板:技嘉B365
解决方案
推荐阅读
- jquery - 运行滑块功能时计算局部值
- python - 如何使用子进程实时获取运行命令的输出?
- r - 将估计值和 p 值放入数据框中
- ember.js - 如何查看 Ember FastBoot 完成的请求?
- docusignapi - 无人值守的 API 授权 - 不再可能?
- azure-data-factory-2 - 源为存储过程的 Azure 数据工厂复制活动
- google-chrome - 检测 Chrome 分阶段发布
- javascript - Google Script 电子邮件发送忽略行中的#N/A 值
- multithreading - 并发进程比单个进程慢很多
- maven - 如何在运行时将 jar 文件路径从本地 maven repo 添加到 jenkins 属性