未找到 WMI 处理器序列号(由 O.E.M 填充)

WMI processor SerialNumber not found (To Be Filled By O.E.M.)

代码: "SELECT * FROM Win32_Processor".GetPropertyValue("SerialNumber")
Return: “由 O.E.M 填写。”

这是什么意思?我的处理器没有序列号?

如果我这样做 GetPropertyValue("ProcessorID") 那么它看起来没问题。 ProcessorID = 唯一序列号?

Return: "To Be Filled By O.E.M." What does this mean?

“由 o.e.m 填补。”是源自 BIOS 的注册条目,通常表示您使用的是直接从制造商处购买的主板,然后组装到您自己的定制机器中。

参考:To be filled by o.e.m. problem

My processor does not have a serial number?

ProcessorId

限定符:MappingStrings(“SMBIOS|类型 4|处理器信息|处理器 ID”) 描述处理器功能的处理器信息。对于 x86 class CPU,字段格式取决于 CPUID 指令的处理器支持。如果支持该指令,则 属性 包含 2(两个)DWORD 格式的值。第一个是 08h-0Bh 的偏移量,这是输入 EAX 设置为 1 的 CPUID 指令 returns 的 EAX 值。第二个是 0Ch-0Fh 的偏移量,它是 EDX该指令的值returns。只有 属性 的前两个字节是重要的,并且包含 CPU 重置时 DX 寄存器的内容——所有其他字节都设置为 0(零),内容为 DWORD 格式。

这个值来自SMBIOS信息中Processor Information结构的Processor ID成员

序列号

限定符:MappingStrings(“SMBIOS|类型 4|序列号”)

此处理器的序列号此值由制造商设置,通常不可更改

这个值来自SMBIOS信息中Processor Information结构的Serial Number成员。 Windows服务器 2012 R2,Windows8.1,Windows服务器 2012,Windows8,Windows服务器 2008 R2,Windows7,Windows Server 2008 和 Windows Vista:此 属性 在 Windows Server 2016 和 Windows 10.

之前不受支持

参考:Win32_Processor class

ProcessorID = unique serial number?

不,不能保证它是唯一的。

参考:

  • Unique computer ID

  • WIN32_Processor::Is ProcessorId Unique for all computers