Я пытаюсь проверить температуру процессора (на AMD FX-4100 в Windows 10) с помощью приложения nodejs (библиотека https://www.npmjs.com/package/systeminformation):
const si = require('systeminformation');
si.graphics()
.then(data => console.info(data))
.catch(error => console.error(error));
И я просто получаю его обратно:
{ основное: -1, ядра: [], макс: -1 }
Другая информация (загрузка ЦП, использование ОЗУ и т. д.) в порядке.
Когда я пытаюсь сделать то же самое чтение в приложении WindowsForm (используя библиотеку OpenHardwareMonitor):
Computer c = new Computer()
{
GPUEnabled = true,
CPUEnabled = true,
MainboardEnabled = true,
HDDEnabled = true,
RAMEnabled = true,
FanControllerEnabled = true
};
(...)
c.Open();
(...)
foreach (var hardwadre in c.Hardware)
{
if (hardwadre.HardwareType == HardwareType.CPU)
{
hardwadre.Update();
foreach (var sensor in hardwadre.Sensors)
Console.WriteLine("Sensores são: " + sensor.SensorType);
}
}
Любой датчик температуры...
В режиме пользовательского интерфейса OpenHardwareMonitor или CPUID HwMonitor я могу это визуализировать... Что может происходить?
Спасибо!!





Мое дикое предположение заключается в том, что либо
systeminformationне обрабатывает это должным образом, либо это проблема с разрешением. Вы запускаете его как администратор или обычный пользователь? См. здесь аналогичный случай: github.com/sebhildebrandt/systeminformation/issues/179