Я использую этот код для получения идентификатора процессора:
public static string getProcessorId()
{
var mc = new ManagementClass("Win32_Processor");
var moc = mc.GetInstances();
foreach (var mo in moc)
{
return mo.Properties["ProcessorId"].Value.ToString();
}
return "Unknown";
}
Я использую 32-разрядную версию Windows 7, Visual Studio 2008. К сожалению, исключение "Не найдено" вызываетсявызов метода mc.GetInstances ().
Вот аналогичный фрагмент кода (извлечение последовательного жесткого диска):
public static string getVolumeSerialNumber()
{
var disk = new ManagementObject("win32_logicaldisk.deviceid=\"c:\"");
disk.Get();
return disk["VolumeSerialNumber"].ToString();
}
Этот код также завершается ошибкой - метод disk.Get ()вызывает исключение "Недопустимый класс".
Я запустил этот код с выключенным и включенным UAC - ничего не помогает.
Что я делаю не так?