Я программирую в WPF C # и пытаюсь получить ProcessorID (или другой системный идентификатор). Я прочитал MSDN - пространство имен System.Management . Я добавляю пространство имен, но оно не обеспечивает ManagementBaseObject Class.
ManagementBaseObject Class
using System.Management; /* code */ System.Management.(there is no ManagementBaseObject)
Используется ли System.Management только в WinForms, а не в WPF?
Существуют некоторые типы с пространством имен System.Management в System.Core, поэтому вы видите некоторые типы.
System.Management
System.Core
Для ManagementBaseObject, однако, вам также необходимо добавить ссылку наSystem.Management.dll к вашему проекту.
ManagementBaseObject
System.Management.dll
Следующий код даст вам идентификатор процессора, если вы добавили ссылку на System.Management:
public static string GetProcessorID() { var processorID = ""; var query = "SELECT ProcessorId FROM Win32_Processor"; var oManagementObjectSearcher = new ManagementObjectSearcher(query); foreach (var oManagementObject in oManagementObjectSearcher.Get()) { processorID = (string)oManagementObject["ProcessorId"]; break; } return processorID; }
Вам необходимо добавить ссылку на System.Management.dll
(согласно «Сборке» в документации для этого класса)