ver temperatura saber programas online normal medir medidor laptop cual como c# monitor temperature

c# - saber - temperatura de mi pc online



Monitoreo de la temperatura de la CPU (3)

En realidad, la mejor manera de realizar cualquier codificación relacionada con el hardware mediante WMI se realiza mediante el uso de esta herramienta WMI Code Creator de Microsoft La herramienta creará el código para usted según lo que esté buscando y el lenguaje .Net que desee usar.

Los idiomas admitidos actualmente son: C #, Visual Basic, VB Script.

Para un proyecto de programación me gustaría acceder a las lecturas de temperatura de mi CPU y GPU. Estaré usando C #. Desde varios foros tengo la impresión de que hay información específica y recursos para desarrolladores que necesitas para acceder a esa información para varios foros. Tengo una placa MSI NF750-G55. El sitio web de MSI no tiene ninguna de la información que estoy buscando. Intenté su soporte técnico y el representante con el que hablé afirmó que no tienen ninguna información de este tipo. Debe haber una manera de obtener esa información.

¿Alguna idea?


Para al menos el lado de la CPU de las cosas, podría utilizar WMI.

El espacio de nombres / objeto es root/WMI, MSAcpi_ThermalZoneTemperature

Código de muestra:

ManagementObjectSearcher searcher = new ManagementObjectSearcher("root//WMI", "SELECT * FROM MSAcpi_ThermalZoneTemperature"); ManagementObjectCollection collection = searcher.Get(); foreach(ManagementBaseObject tempObject in collection) { Console.WriteLine(tempObject["CurrentTemperature"].ToString()); }

Eso te dará la temperatura en un formato crudo. Tienes que convertir desde allí:

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


Tenga en cuenta que MSAcpi_ThermalZoneTemperature no le proporciona la temperatura de la CPU, sino la temperatura de la placa base. Además, tenga en cuenta que la mayoría de las placas base no implementan esto a través de WMI.

Puede probar Open Hardware Monitor, aunque carece de soporte para los procesadores más recientes.

internal sealed class CpuTemperatureReader : IDisposable { private readonly Computer _computer; public CpuTemperatureReader() { _computer = new Computer { CPUEnabled = true }; _computer.Open(); } public IReadOnlyDictionary<string, float> GetTemperaturesInCelsius() { var coreAndTemperature = new Dictionary<string, float>(); foreach (var hardware in _computer.Hardware) { hardware.Update(); //use hardware.Name to get CPU model foreach (var sensor in hardware.Sensors) { if (sensor.SensorType == SensorType.Temperature && sensor.Value.HasValue) coreAndTemperature.Add(sensor.Name, sensor.Value.Value); } } return coreAndTemperature; } public void Dispose() { try { _computer.Close(); } catch (Exception) { //ignore closing errors } } }

Descargue el archivo zip de la fuente oficial , extraiga y agregue una referencia a OpenHardwareMonitorLib.dll en su proyecto.