2010-08-19 7 views
1

Есть ли способ запросить через WMI в C#, как вы можете сделать с классом System.Diagnostics.PerformanceCounter?WMI Счетчик производительности Вопросы запроса

Проще говоря, как я могу передать ему строку, такую ​​как \\localhost\Processor(0)\% Processor Time, и она построит правильный запрос WMI для меня?

У меня есть огромный список счетчиков в плоском файле из старой программы, и я хочу переместить его в Службу, которая просто проходит через плоский файл и получает значение.

ответ

2

Вы можете использовать WMI Performance Class Counters. Примером этого может быть опрос PerfDisk_LogicalDisk

ManagementObjectSearcher mos = new ManagementObjectSearcher("select * from Win32_PerfFormattedData_PerfDisk_LogicalDisk"); 
foreach (ManagementObject service in mos.Get()) 
{ 
    foreach (PropertyData data in service.Properties) 
    { 
     Console.WriteLine("{0} {1}", data.Name, data.Value); 
    } 
} 
Смежные вопросы