Delphi获取CPU CPUID《转》
uses ActiveX, ComObj; function GetWMIProperty(WMIType, WMIProperty:AnsiString):String; var Wmi, Objs, Obj:OleVariant; Enum:IEnumVariant; C:Cardinal; begin try Wmi:= CreateOleObject(AnsiString('WbemScripting.SWbemLocator')); Objs := Wmi.ConnectServer(AnsiString('.'),AnsiString('root\cimv2')).ExecQuery(AnsiString('Select * from Win32_'+WMIType)); Enum:=IEnumVariant(IUnknown(Objs._NewEnum)); Enum.Reset; Enum.Next(1,Obj,C); Obj:=Obj.Properties_.Item(WMIProperty,0).Value; if VarIsArray(Obj) then Result:=Obj[0] else Result:=Obj; except Result:='Error'; end; end; ShowMessage(GetWMIProperty('Processor','ProcessorId'));