使用Delphi读取CPU序列号
时间: 2023-07-11 20:52:27 浏览: 147
在 Delphi 中读取 CPU 序列号,可以使用 WMI(Windows Management Instrumentation)技术。以下是一个示例代码,可以获取 CPU 序列号:
```delphi
uses
ComObj, ActiveX, Variants;
function GetCPUSerialNumber: string;
var
objWMIService: OleVariant;
colItems: OleVariant;
objItem: OleVariant;
oEnum: IEnumvariant;
iValue: LongWord;
begin
Result := '';
objWMIService := GetOleObject('winmgmts:\\localhost\root\CIMV2');
colItems := objWMIService.ExecQuery('SELECT * FROM Win32_Processor', 'WQL', 0);
oEnum := IUnknown(colItems._NewEnum) as IEnumVariant;
if oEnum.Next(1, objItem, iValue) = 0 then
begin
Result := objItem.ProcessorId;
end;
end;
```
这段代码使用了 `winmgmts` 命名空间中的 `Win32_Processor` 类,通过执行 WQL(Windows Management Instrumentation Query Language)查询语句获取 CPU 信息。在获取到 CPU 对象后,从中获取 `ProcessorId` 属性即可获得 CPU 序列号。
阅读全文