#wmi #wmi-query
#wmi #wmi-запрос
Вопрос:
Я хочу прочитать общую загрузку процессора удаленных ПК, как показано в диспетчере задач Windows. Но если я использую приведенный ниже код (выполняется каждую секунду), я читаю совсем другое значение, показанное в диспетчере задач. Я прочитал в некоторых вопросах, в чем может быть причина. Но нет решения, как это исправить. Как я могу оптимизировать свой код? Существует ли альтернативное решение, отличное от WMI?
public static void CPU_Load_WMI() { try { ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\CIMV2", "SELECT * FROM Win32_Processor"); foreach (ManagementObject queryObj in searcher.Get()) { Console.WriteLine("-----------------------------------"); Console.WriteLine("Win32_Processor instance"); Console.WriteLine("-----------------------------------"); Console.WriteLine("LoadPercentage: {0}", queryObj["LoadPercentage"]); } } catch (ManagementException e) { MessageBox.Show("An error occurred while querying for WMI data: " e.Message); } }