Page 1 sur 1
Windows info sur le(s) processeurs

Publié:
16 Mars 2011 à 16:45
par Michael DELIQUE
- Code : Tout sélectionner
Public Function WindowsProcessorInfo(wnbProcessor As Integer) As Variant
Dim lstRetour List As String
Dim vrObject As Variant
Dim nbProcessor As Integer
Dim i As Integer
Const Computer = "."
On Error GoTo CatchError
lstRetour("ADDRESSWIDTH") = ""
lstRetour("ARCHITECTURE") = ""
lstRetour("AVAILABILITY") = ""
lstRetour("CAPTION") = ""
lstRetour("CONFIGMANAGERERRORCODE") = ""
lstRetour("CONFIGMANAGERUSERCONFIG") = ""
lstRetour("CPUSTATUS") = ""
lstRetour("CREATIONCLASSNAME") = ""
lstRetour("CURRENTCLOCKSPEED") = ""
lstRetour("CURRENTVOLTAGE") = ""
lstRetour("DATAWIDTH") = ""
lstRetour("DESCRIPTION") = ""
lstRetour("DEVICEID") = ""
lstRetour("ERRORCLEARED") = ""
lstRetour("ERRORDESCRIPTION") = ""
lstRetour("EXTCLOCK") = ""
lstRetour("FAMILY") = ""
lstRetour("FAMILYNAME") = ""
lstRetour("INSTALLDATE") = ""
lstRetour("L2CACHESIZE") = ""
lstRetour("L2CACHESPEED") = ""
lstRetour("L3CACHESIZE") = ""
lstRetour("L3CACHESPEED") = ""
lstRetour("LASTERRORCODE") = ""
lstRetour("LEVEL") = ""
lstRetour("LOADPERCENTAGE") = ""
lstRetour("MANUFACTURER") = ""
lstRetour("MAXCLOCKSPEED") = ""
lstRetour("NAME") = ""
lstRetour("NUMBEROFCORES") = ""
lstRetour("NUMBEROFLOGICALPROCESSORS") = ""
lstRetour("OTHERFAMILYDESCRIPTION") = ""
lstRetour("PNPDEVICEID") = ""
lstRetour("POWERMANAGEMENTCAPABILITIES") = ""
lstRetour("POWERMANAGEMENTSUPORTED") = ""
lstRetour("PROCESSORID") = ""
lstRetour("PROCESSORTYPE") = ""
lstRetour("REVISION") = ""
lstRetour("ROLE") = ""
lstRetour("SOCKETDESIGNATION") = ""
lstRetour("STATUS") = ""
lstRetour("STATUSINFO") = ""
lstRetour("STEPPING") = ""
lstRetour("SYSTEMCREATIONCLASSNAME") = ""
lstRetour("SYSTEMNAME") = ""
lstRetour("UNIQUEID") = ""
lstRetour("UPGRADEMETHOD") = ""
lstRetour("VERSION") = ""
lstRetour("") = ""
nbProcessor = Abs(wnbProcessor)
If nbProcessor < 1 Then
nbProcessor = 1
End If
Set vrObject = GetObject("WinMgmts:{impersonationLevel=impersonate, authenticationLevel=connect, (security)}!\\" +Computer + "\root\CIMv2").ExecQuery("SELECT * FROM Win32_processor")
i=0
ForAll value In vrObject
i=i+1
If i = nbProcessor Then
On Error Resume Next
lstRetour("ADDRESSWIDTH") = CStr(value.AddressWidth)
lstRetour("ARCHITECTURE") = CStr(value.Architecture)
lstRetour("AVAILABILITY") = CStr(value.Availability)
lstRetour("CAPTION") = CStr(value.Caption)
lstRetour("CONFIGMANAGERERRORCODE") = CStr(value.ConfigManagerErrorCode)
lstRetour("CONFIGMANAGERUSERCONFIG") = CStr(value.ConfigManagerUserConfig)
lstRetour("CPUSTATUS") = CStr(value.CpuStatus)
lstRetour("CREATIONCLASSNAME") = CStr(value.CreationClassName)
lstRetour("CURRENTCLOCKSPEED") = CStr(value.CurrentClockSpeed)
lstRetour("CURRENTVOLTAGE") = CStr(value.CurrentVoltage)
lstRetour("DATAWIDTH") = CStr(value.DataWidth)
lstRetour("DESCRIPTION") = CStr(value.Description)
lstRetour("DEVICEID") = CStr(value.DeviceID)
lstRetour("ERRORCLEARED") = CStr(value.ErrorCleared)
lstRetour("ERRORDESCRIPTION") = CStr(value.ErrorDescription)
lstRetour("EXTCLOCK") = CStr(value.ExtClock)
lstRetour("FAMILY") = CStr(value.Family)
lstRetour("FAMILYNAME") = ProcessorFamily(CInt(value.Family))
lstRetour("INSTALLDATE") = CStr(value.InstallDate)
lstRetour("L2CACHESIZE") = CStr(value.L2CacheSize)
lstRetour("L2CACHESPEED") = CStr(value.L2CacheSpeed)
lstRetour("L3CACHESIZE") = CStr(value.L3CacheSize)
lstRetour("L3CACHESPEED") = CStr(value.L3CacheSpeed)
lstRetour("LASTERRORCODE") = CStr(value.LastErrorCode)
lstRetour("LEVEL") = CStr(value.Level)
lstRetour("LOADPERCENTAGE") = CStr(value.LoadPercentage)
lstRetour("MANUFACTURER") = CStr(value.Manufacturer)
lstRetour("MAXCLOCKSPEED") = CStr(value.MaxClockSpeed)
lstRetour("NAME") = CStr(value.Name)
lstRetour("NUMBEROFCORES") = CStr(value.NumberOfCores)
lstRetour("NUMBEROFLOGICALPROCESSORS") = CStr(value.NumberOfLogicalProcessors)
lstRetour("OTHERFAMILYDESCRIPTION") = CStr(value.OtherFamilyDescription)
lstRetour("PNPDEVICEID") = CStr(value.PNPDeviceID)
lstRetour("POWERMANAGEMENTCAPABILITIES") = CStr(Join(value.PowerManagementCapabilities,","))
lstRetour("POWERMANAGEMENTSUPORTED") = CStr(value.PowerManagementSupported)
lstRetour("PROCESSORID") = CStr(value.ProcessorId)
lstRetour("PROCESSORTYPE") = CStr(value.ProcessorType)
lstRetour("REVISION") = CStr(value.Revision)
lstRetour("ROLE") = CStr(value.Role)
lstRetour("SOCKETDESIGNATION") = CStr(value.SocketDesignation)
lstRetour("STATUS") = CStr(value.Status)
lstRetour("STATUSINFO") = CStr(value.StatusInfo)
lstRetour("STEPPING") = CStr(value.Stepping)
lstRetour("SYSTEMCREATIONCLASSNAME") = CStr(value.SystemCreationClassName)
lstRetour("SYSTEMNAME") = CStr(value.SystemName)
lstRetour("UNIQUEID") = CStr(value.UniqueId)
lstRetour("UPGRADEMETHOD") = CStr(value.UpgradeMethod)
lstRetour("VERSION") = CStr(value.Version)
lstRetour("") = CStr(value.VoltageCaps)
On Error GoTo CatchError
End If
End ForAll
Set vrObject = Nothing
WindowsProcessorInfo = lstRetour
Erase lstRetour
Exit Function
CatchError:
MsgBox "("+Cstr(GetThreadInfo (1))+" Call by "+Cstr(GetThreadInfo(10))+")"+Chr(10)+"Erreur " + Str(Err) + " : "+Chr(10) + CStr(Error)+". "+Chr(10)+"Ligne N° "+Cstr(Erl),16," ERREUR !"
Erase lstRetour
lstRetour("ADDRESSWIDTH") = ""
lstRetour("ARCHITECTURE") = ""
lstRetour("AVAILABILITY") = ""
lstRetour("CAPTION") = ""
lstRetour("CONFIGMANAGERERRORCODE") = ""
lstRetour("CONFIGMANAGERUSERCONFIG") = ""
lstRetour("CPUSTATUS") = ""
lstRetour("CREATIONCLASSNAME") = ""
lstRetour("CURRENTCLOCKSPEED") = ""
lstRetour("CURRENTVOLTAGE") = ""
lstRetour("DATAWIDTH") = ""
lstRetour("DESCRIPTION") = ""
lstRetour("DEVICEID") = ""
lstRetour("ERRORCLEARED") = ""
lstRetour("ERRORDESCRIPTION") = ""
lstRetour("EXTCLOCK") = ""
lstRetour("FAMILY") = ""
lstRetour("FAMILYNAME") = ""
lstRetour("INSTALLDATE") = ""
lstRetour("L2CACHESIZE") = ""
lstRetour("L2CACHESPEED") = ""
lstRetour("L3CACHESIZE") = ""
lstRetour("L3CACHESPEED") = ""
lstRetour("LASTERRORCODE") = ""
lstRetour("LEVEL") = ""
lstRetour("LOADPERCENTAGE") = ""
lstRetour("MANUFACTURER") = ""
lstRetour("MAXCLOCKSPEED") = ""
lstRetour("NAME") = ""
lstRetour("NUMBEROFCORES") = ""
lstRetour("NUMBEROFLOGICALPROCESSORS") = ""
lstRetour("OTHERFAMILYDESCRIPTION") = ""
lstRetour("PNPDEVICEID") = ""
lstRetour("POWERMANAGEMENTCAPABILITIES") = ""
lstRetour("POWERMANAGEMENTSUPORTED") = ""
lstRetour("PROCESSORID") = ""
lstRetour("PROCESSORTYPE") = ""
lstRetour("REVISION") = ""
lstRetour("ROLE") = ""
lstRetour("SOCKETDESIGNATION") = ""
lstRetour("STATUS") = ""
lstRetour("STATUSINFO") = ""
lstRetour("STEPPING") = ""
lstRetour("SYSTEMCREATIONCLASSNAME") = ""
lstRetour("SYSTEMNAME") = ""
lstRetour("UNIQUEID") = ""
lstRetour("UPGRADEMETHOD") = ""
lstRetour("VERSION") = ""
lstRetour("") = ""
WindowsProcessorInfo = lstRetour
Erase lstRetour
Exit Function
End Function
- Code : Tout sélectionner
Public Function ProcessorFamily(wType As Integer) As String
On Error GoTo CatchError
Select Case wType
Case 1
ProcessorFamily = "Other"
Case 2
ProcessorFamily = "Unknown"
Case 3
ProcessorFamily = "8086"
Case 4
ProcessorFamily = "80286"
Case 5
ProcessorFamily = "80386"
Case 6
ProcessorFamily = "80486"
Case 7
ProcessorFamily = "8087"
Case 8
ProcessorFamily = "80287"
Case 9
ProcessorFamily = "80387"
Case 10
ProcessorFamily = "80487"
Case 11
ProcessorFamily = "Pentium® brand"
Case 12
ProcessorFamily = "Pentium® Pro"
Case 13
ProcessorFamily = "Pentium® II"
Case 14
ProcessorFamily = "Pentium® processor With MMX technology"
Case 15
ProcessorFamily = "Celeron™"
Case 16
ProcessorFamily = "Pentium® II Xeon"
Case 17
ProcessorFamily = "Pentium® III"
Case 18
ProcessorFamily = "M1 Family"
Case 19
ProcessorFamily = "M2 Family"
Case 24
ProcessorFamily = "K5 Family"
Case 25
ProcessorFamily = "K6 Family"
Case 26
ProcessorFamily = "K6-2"
Case 27
ProcessorFamily = "K6-3"
Case 28
ProcessorFamily = "AMD Athlon™ Processor Family"
Case 29
ProcessorFamily = "AMD® Duron™ Processor"
Case 30
ProcessorFamily = "AMD2900 Family"
Case 31
ProcessorFamily = "K6-2+"
Case 32
ProcessorFamily = "Power PC Family"
Case 33
ProcessorFamily = "Power PC 601"
Case 34
ProcessorFamily = "Power PC 603"
Case 35
ProcessorFamily = "Power PC 603+"
Case 36
ProcessorFamily = "Power PC 604"
Case 37
ProcessorFamily = "Power PC 620"
Case 38
ProcessorFamily = "Power PC X704"
Case 39
ProcessorFamily = "Power PC 750"
Case 48
ProcessorFamily = "Alpha Family"
Case 49
ProcessorFamily = "Alpha 21064"
Case 50
ProcessorFamily = "Alpha 21066"
Case 51
ProcessorFamily = "Alpha 21164"
Case 52
ProcessorFamily = "Alpha 21164PC"
Case 53
ProcessorFamily = "Alpha 21164a"
Case 54
ProcessorFamily = "Alpha 21264"
Case 55
ProcessorFamily = "Alpha 21364"
Case 64
ProcessorFamily = "MIPS Family"
Case 65
ProcessorFamily = "MIPS R4000"
Case 66
ProcessorFamily = "MIPS R4200"
Case 67
ProcessorFamily = "MIPS R4400"
Case 68
ProcessorFamily = "MIPS R4600"
Case 69
ProcessorFamily = "MIPS R10000"
Case 80
ProcessorFamily = "SPARC Family"
Case 81
ProcessorFamily = "SuperSPARC"
Case 82
ProcessorFamily = "microSPARC II"
Case 83
ProcessorFamily = "microSPARC IIep"
Case 84
ProcessorFamily = "UltraSPARC"
Case 85
ProcessorFamily = "UltraSPARC II"
Case 86
ProcessorFamily = "UltraSPARC IIi"
Case 87
ProcessorFamily = "UltraSPARC III"
Case 88
ProcessorFamily = "UltraSPARC IIIi"
Case 96
ProcessorFamily = "68040"
Case 97
ProcessorFamily = "68xxx Family"
Case 98
ProcessorFamily = "68000"
Case 99
ProcessorFamily = "68010"
Case 100
ProcessorFamily = "68020"
Case 101
ProcessorFamily = "68030"
Case 112
ProcessorFamily = "Hobbit Family"
Case 120
ProcessorFamily = "Crusoe™ TM5000 Family"
Case 121
ProcessorFamily = "Crusoe™ TM3000 Family"
Case 128
ProcessorFamily = "Weitek"
Case 130
ProcessorFamily = "Itanium™ Processor"
Case 144
ProcessorFamily = "PA-RISC Family"
Case 145
ProcessorFamily = "PA-RISC 8500"
Case 146
ProcessorFamily = "PA-RISC 8000"
Case 147
ProcessorFamily = "PA-RISC 7300LC"
Case 148
ProcessorFamily = "PA-RISC 7200"
Case 149
ProcessorFamily = "PA-RISC 7100LC"
Case 150
ProcessorFamily = "PA-RISC 7100"
Case 160
ProcessorFamily = "V30 Family"
Case 176
ProcessorFamily = "Pentium® III Xeon™"
Case 177
ProcessorFamily = "Pentium® III Processor With Intel® SpeedStep™ Technology"
Case 178
ProcessorFamily = "Pentium® 4"
Case 179
ProcessorFamily = "Intel® Xeon™"
Case 180
ProcessorFamily = "AS400 Family"
Case 181
ProcessorFamily = "Intel® Xeon™ processor MP"
Case 182
ProcessorFamily = "AMD AthlonXP™ Family"
Case 183
ProcessorFamily = "AMD AthlonMP™ Family"
Case 184
ProcessorFamily = "Intel® Itanium® 2"
Case 185
ProcessorFamily = "AMD Opteron™ Family"
Case 190
ProcessorFamily = "K7"
Case 200
ProcessorFamily = "IBM390 Family"
Case 201
ProcessorFamily = "G4"
Case 202
ProcessorFamily = "G5"
Case 250
ProcessorFamily = "i860"
Case 251
ProcessorFamily = "i960"
Case 260
ProcessorFamily = "SH-3"
Case 261
ProcessorFamily = "SH-4"
Case 280
ProcessorFamily = "ARM"
Case 281
ProcessorFamily = "StrongARM"
Case 300
ProcessorFamily = "6x86"
Case 301
ProcessorFamily = "MediaGX"
Case 302
ProcessorFamily = "MII"
Case 320
ProcessorFamily = "WinChip"
Case 350
ProcessorFamily = "DSP"
Case 500
ProcessorFamily = "Video Processor"
Case Else
ProcessorFamily = CStr(wType)
End Select
Exit Function
CatchError:
Msgbox "("+Cstr(Getthreadinfo (1))+" Call by "+Cstr(Getthreadinfo(10))+")"+Chr(10)+"Erreur " + Str(Err) + " : "+Chr(10) + Cstr(Error)+". "+Chr(10)+"Ligne N° "+Cstr(Erl),16," ERREUR !"
ProcessorFamily = CStr(wType)
Exit Function
End Function