Получить температуру процессора

virus_system
Дата: 22.01.2010 16:10:25
как получить температуру процессора?
virus_system
Дата: 24.01.2010 09:20:23
Есть ли какие нибудь методы в .net?
D129
Дата: 24.01.2010 10:04:24
virus_system
Есть ли какие нибудь методы в .net?

Есть. Я как-то гуглил.
Но это не универсально - датчик температуры есть не на всех материнках (не на всех стандартно выведен(?)).

То есть - это выглядит как запрос (а не метод) который возвращает значение, а вот мне этот запрос возвращал ноль.
Я плюнул, и ограничился индикатором загрузки.
Счас поищу код.
D129
Дата: 24.01.2010 10:12:23
virus_system,

private string GetCpuTemp()
		{
			string tempSummary = "";
			ManagementObjectSearcher query = new ManagementObjectSearcher("SELECT * FROM Win32_TemperatureProbe");
			foreach (ManagementObject obj in query.Get())
			{
				tempSummary += "Temperature: " + obj[""].ToString()	+"\n";
			}

			return tempSummary;
			
		}


А вот с загрузкой - проще намного.
добавляете из панели инструментов performanceCounter
в нем настраиваете категорию Processor, counter name - % Processor Time, instanse name - _Total

и можно вызывать:

int ResivedValue = (int)(performanceCounter1.NextValue() / 2);
virus_system
Дата: 25.01.2010 08:22:44
D129, спасибо.

А тогда как же узнают температуру всякие специальные утилиты? Они у всех мамок ее показывают?????
virus_system
Дата: 25.01.2010 08:55:10
D129
virus_system,

private string GetCpuTemp()
		{
			string tempSummary = "";
			ManagementObjectSearcher query = new ManagementObjectSearcher("SELECT * FROM Win32_TemperatureProbe");
			foreach (ManagementObject obj in query.Get())
			{
				tempSummary += "Temperature: " + obj[""].ToString()	+"\n";
			}

			return tempSummary;
			
		}


А вот с загрузкой - проще намного.
добавляете из панели инструментов performanceCounter
в нем настраиваете категорию Processor, counter name - % Processor Time, instanse name - _Total

и можно вызывать:

int ResivedValue = (int)(performanceCounter1.NextValue() / 2);



На моем компе не выдает температуру. Хотя мамка вроде не старая - 2009 года.
virus_system
Дата: 25.01.2010 10:40:34
ну подскажите, плз.
D129
Дата: 25.01.2010 12:50:25
virus_system
D129, спасибо.

А тогда как же узнают температуру всякие специальные утилиты? Они у всех мамок ее показывают?????

Тоже не у всех. Я ставил, конечно, родные утилиты от производителей - они показывают. Но практического толка от них не много, а ресурсы жрут. Давно уже не балуюсь с этим.
Iktomy
Дата: 25.01.2010 14:02:19
как мне кажется, если на мамке, в самом проце нет термодатчика, то берется некое усредненное значение по данным фирмы производителя, исходя из модели ЦП и его частоты. Вот именно поэтому, сторонние утилиты, в отличии от ПО производителя железа, могут и не показывать температуру. но это только предположение.

а автору я бы посоветовал использовать для этих целей библиотеку, написанную на Си - это будет просче.
virus_system
Дата: 25.01.2010 14:16:20
Iktomy, да я уже и Си смотрел и асм, да вообще полного всего смотрел - нету ничего.
Точнее есть, но некоторые не работают (либо я несмог запустить), некоторые заточены только под очень определенное мно-во мамок. Короче лажа всякая.
Хочется хоть какой то универсальности...