Итак, когда я пытаюсь получить информацию об оборудовании, используя классы WMI. Некоторые свойства возвращают NULL.
Вот примеры:
ManagementObjectSearcher mos =
new ManagementObjectSearcher("SELECT * FROM Win32_BaseBoard");
foreach (ManagementObject mo in mos.Get())
{
return mo["Name"].ToString(); // Works
return mo["Manufacturer"].ToString(); //Works
return mo["Model"].ToString(); //Returns null
}
ManagementObjectSearcher mos =
new ManagementObjectSearcher("SELECT * FROM Win32_Processor");
foreach (ManagementObject mo in mos.Get())
{
return mo["NumberOfCores"].ToString(); // Works
return mo["ThreadCount"].ToString(); // Works
return mo["Family"].ToString(); //Works
return mo["Version"].ToString(); //Returns null
return mo["Stepping"].ToString(); //Returns null
return mo["Revision"].ToString(); //Returns null
}
И так далее с графической картой et c .. некоторые свойства возвращают что-то, некоторые нулевые ... У меня есть даже попробуйте запустить мое программное обеспечение от имени администратора, поставив «root \ CIMV2» по запросу, но ничего не получается.
Я запускаю Windows 10 с последними обновлениями и использую Visual Studio 2017