c# - CPU温度监控

标签 c# monitor temperature

对于一个编程项目,我想访问我的 CPU 和 GPU 的温度读数。我将使用 C#。从各种论坛我得到的印象是,您需要特定的信息和开发人员资源才能访问各种板的信息。我有一个 MSI NF750-G55 板。 MSI 的网站上没有我要查找的任何信息。我尝试了他们的技术支持,与我交谈的代表表示他们没有任何此类信息。必须有一种方法来获取该信息。

有什么想法吗?

最佳答案

至少对于 CPU 方面的事情,您可以使用 WMI。

命名空间\对象是root\WMI, MSAcpi_ThermalZoneTemperature

示例代码:

ManagementObjectSearcher searcher = 
    new ManagementObjectSearcher("root\\WMI",
                                 "SELECT * FROM MSAcpi_ThermalZoneTemperature");

ManagementObjectCollection collection = 
    searcher.Get();

foreach(ManagementBaseObject tempObject in collection)
{
    Console.WriteLine(tempObject["CurrentTemperature"].ToString());
}

这将为您提供原始格式的温度。你必须从那里转换:

kelvin = raw / 10;

celsius = (raw / 10) - 273.15;

fahrenheit = ((raw / 10) - 273.15) * 9 / 5 + 32;

关于c# - CPU温度监控,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2923984/

相关文章:

c# - 是什么原因导致此列表在以一种方式调用时通过引用传递,但通过另一种方式传递值?

Javascript:如何不断监控变量值

MySQL 监视器复制

java - Java中的静态和非静态同步

c - 如何将值转换为传感器的温度?

c# - 我怎么能模拟这段代码?

c# - 不太可能包含用户可执行文件的目录 ('.exes' )

c# - 如何暂停/挂起一个线程然后继续它?

python - 用Python编写温度传感器

linux - 在 Linux 上进行基准测试时测量温度