2015-01-07 4 views
0

Я пытаюсь получить доступ к моей температуре процессора, используя запрос WMI, потому что люди сказали, что вы можете это сделать. Я использую сценарий, который я получил в сети, и когда я пытаюсь вывести запрошенные данные, он просто дает мне не поддерживаемый поток. Вот выход ошибки:Ошибка возврата запроса WMI

System.Management.ManagementObjectCollectionA first chance exception of type 'System.Management.ManagementException' occurred in System.Management.dll 
The thread 0xc8ac has exited with code 259 (0x103). 
A first chance exception of type 'System.Management.ManagementException' occurred in System.Management.dll 
An error occurred while querying for WMI data: Not supported System.Management.ManagementObjectCollectionAn error occurred while querying for WMI data: Not supported The thread 0x9928 has exited with code 259 (0x103). 
A first chance exception of type 'System.Management.ManagementException' occurred in System.Management.dll 
System.Management.ManagementObjectCollectionAn error occurred while querying for WMI data: Not supported The program '[49728] GetHardwareInfo.vshost.exe: Program Trace' has exited with code 0 (0x0). 
The program '[49728] GetHardwareInfo.vshost.exe' has exited with code 0 (0x0). 

Я собираюсь предположить, что это потому, что нет никаких данных, но я не уверен.

private void get_cpu_temp() 
{ 
    try 
    { 
     ManagementObjectSearcher searcher = new ManagementObjectSearcher(@"root\WMI", "SELECT * FROM MSAcpi_ThermalZoneTemperature"); 
     Console.Write(searcher.Get()); 
     foreach (ManagementObject queryObj in searcher.Get()) 
     { 
      double temp = double.Parse(queryObj["CurrentTemperature"].ToString()); 
      temp = (temp - 2732)/10d; 
      Console.Write(temp.ToString()); 
     } 
    } 
    catch (ManagementException err) 
    { 
     Console.Write("An error occurred while querying for WMI data: " + err.Message); 
    } 
} 
+0

Я отредактировал ваше название. Пожалуйста, смотрите: «Если вопросы включают« теги »в их названиях?] (Http://meta.stackexchange.com/questions/19190/), где консенсус« нет, они не должны ». –

+0

Какую версию Windows вы используете? Windows XP? –

ответ

0

Как я уже говорил в CPU temperature monitoring, ваша материнская плата должна поддерживать запрашивая температуру процессора через WMI.

В этом случае, похоже, что ваша материнская плата не поддерживает запросы через WMI, поэтому это просто не будет для вас вариантом.

+0

Что делать, если я перехватываю значение памяти из теплового радара asus? –

0

Не все машины поддерживают считывание температуры процессора. Это функция вашего программного обеспечения BIOS. Иногда производитель BIOS будет поставлять DLL-файлы, которые вы можете ссылаться для вызова требуемой функции и возврата деталей. Когда вы перезагружаете компьютер, получите имя производителя и номер модели BIOS и проверьте, поддерживают ли они его.

От MSAcpi_ThermalZoneTemperature not supported..

+0

У меня Asus 990fx r2.0 Я не думаю, что они выглядели. –

Смежные вопросы