Type CPUInfo
AddressWidth As String
Architecture As String
Availability As String
Caption As String
ConfigManagerErrorCode As String
ConfigManagerUserConfig As String
CpuStatus As String
CreationClassName As String
CurrentClockSpeed As String
CurrentVoltage As String
DataWidth As String
Description As String
DeviceID As String
ErrorCleared As String
ErrorDescription As String
ExtClock As String
Family As String
InstallDate As String
L2CacheSize As String
L2CacheSpeed As String
LastErrorCode As String
Level As String
LoadPercentage As String
Manufacturer As String
MaxClockSpeed As String
Name As String
OtherFamilyDescription As String
PNPDeviceID As String
PowerManagementCapabilities As String
PowerManagementSupported As String
ProcessorId As String
ProcessorType As String
Revision As String
Role As String
SocketDesignation As String
Status As String
StatusInfo As String
Stepping As String
SystemCreationClassName As String
SystemName As String
UniqueId As String
UpgradeMethod As String
Version As String
VoltageCaps As String
End Type
'===============================================================================
'-函数名称: GetCPUInfo
'-功能描述: 获取CPU信息
'-输入参数说明:
'-返回参数说明: 返回CPU的一系列信息
'-使用语法示例: Msgbox GetCPUInfo.Caption
'-参考:
'-使用注意: 使用本函数时请保留函数信息内容
'-兼容性: 2000,XP,2003
'-作者: fan0217@163.com
'-更新日期: 2006-05-20
'===============================================================================
Function GetCPUInfo() As CPUInfo
On Error Resume Next
Dim objWMIService As Object
Dim objItem As Object
Dim colItems As Object
Set objWMIService = GetObject("winmgmts://./root/cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor", , 48)
For Each objItem In colItems
With GetCPUInfo
.AddressWidth = objItem.AddressWidth
.Architecture = objItem.Architecture
.Availability = objItem.Availability
.Caption = objItem.Caption
.ConfigManagerErrorCode = objItem.ConfigManagerErrorCode