C# 如何从win32处理器获取处理器Id

C# 如何从win32处理器获取处理器Id,c#,c#-3.0,wmi,C#,C# 3.0,Wmi,它给出了直线的误差 string strProcessorId = string.Empty; SelectQuery query = new SelectQuery("Win32_processor"); ManagementObjectSearcher search = new ManagementObjectSearcher(query); foreach (ManagementObject info in search.Get()) { strProcessorId = inf

它给出了直线的误差

string strProcessorId = string.Empty;
SelectQuery query = new SelectQuery("Win32_processor");
ManagementObjectSearcher search = new ManagementObjectSearcher(query);

foreach (ManagementObject info in search.Get())
{
    strProcessorId = info["processorId"].ToString();
}
Console.WriteLine(strProcessorId);
Console.ReadLine();
错误是:
对象引用未设置为对象的实例。


如何删除此错误

WMI属性名称可能区分大小写。尝试:

strProcessorId = info["processorId"].ToString();
它还可能有助于正确大写类的名称:

试一试

我想这只是因为缺少大写字母,意味着返回了null

strProcessorId = info["ProcessorId"].ToString();
SelectQuery query = new SelectQuery("Win32_Processor");
    string strProcessorId = string.Empty;
    SelectQuery query = new SelectQuery("Win32_processor");
    ManagementObjectSearcher search = new ManagementObjectSearcher(query);

    foreach (ManagementObject info in search.Get())
    {
        strProcessorId = info["ProcessorID"].ToString();
    }
    Console.WriteLine(strProcessorId);
    Console.ReadLine();