¿Cómo utilizar WMITools para asignar un valor a CPUID cuando ManagementClass("Win32_Processor") no puede obtener CPUID?
Falló el uso de ManagementClass("Win32_Processor") para obtener el cpuid, el código es el siguiente:
ManagementClass mc = new ManagementClass("Win32_Processor");
ManagementObjectCollection moc = mc .GetInstances();
foreach (ManagementObject mo en moc)
{
_S_RegsionGUID = mo.Properties["ProcessorId"].Value .ToString() ;
break;
}
Cuando no se puede obtener el ProcessorId, se le pregunta que el valor es Null. Tiene éxito en algunos casos. computadoras y falla en algunas computadoras. Verifiqué información relacionada con ManagementClass: [Espacio de nombres WMI en .NET Framework] [Introducción a WMI y aplicación simple La solución es la siguiente:
1. Determine que el problema radica en WMI
<; p> 2. Descargue la herramienta de administración WMI WMITools.exe, dirección de descarga: /downloads/details.aspx?familyid=6430F853-1120-48DB-8CC5-F2ABDC3ED314&displaylang=en3. Compruebe si el ProcessorId es vacío, si está vacío, use WMITools para asignarle un valor.
4. Depure el código anterior _S_RegsionGUID = mo.Properties["ProcessorId"].Value.ToString(); y pasará sin problemas.