winapi – WMI processor SerialNumber not found (To Be Filled By O.E.M.)
Return: To Be Filled By O.E.M. What does this mean?
To be filled by o.e.m. is a registration entry that originates in the BIOS and usually indicates you are using a motherboard that you purchased directly from the manufacturer, and then assembled into your own custom machine.
My processor does not have a serial number?
Qualifiers: MappingStrings (SMBIOS|Type 4|Processor Information|Processor ID)
Processor information that describes the processor features. For an x86 class CPU, the field format depends on the processor support of the CPUID instruction. If the instruction is supported, the property contains 2 (two) DWORD formatted values. The first is an offset of 08h-0Bh, which is the EAX value that a CPUID instruction returns with input EAX set to 1. The second is an offset of 0Ch-0Fh, which is the EDX value that the instruction returns. Only the first two bytes of the property are significant and contain the contents of the DX register at CPU reset—all others are set to 0 (zero), and the contents are in DWORD format.
This value comes from the Processor ID member of the Processor Information structure in the SMBIOS information.
Qualifiers: MappingStrings (SMBIOS|Type 4|Serial Number)
The serial number of this processor This value is set by the manufacturer and normally not changeable.
This value comes from the Serial Number member of the Processor Information structure in the SMBIOS information. Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows Server 2016 and Windows 10.
Refer: Win32_Processor class
ProcessorID = unique serial number?
No, it cant be guaranteed that it will be unique.