Hi ,
I have installed visual studio 2005 on my computer
i found vb code that show cpu information but it is vb6 code
so when i wrote vb6 code on my edition, i had encontered some error
how i can solve errors ?
this is vb6 code
Display the Processor Speed in MHz
declaration
Code:
Option Explicit
Private Const sCPURegKey = "HARDWARE\DESCRIPTION\System\CentralProcessor\0"
Private Const HKEY_LOCAL_MACHINE As Long = &H80000002
Private Declare Function RegCloseKey Lib "advapi32.dll" _
(ByVal hKey As Long) As Long
Private Declare Function RegOpenKey Lib "advapi32.dll" _
Alias "RegOpenKeyA" _
(ByVal hKey As Long, _
ByVal lpSubKey As String, _
phkResult As Long) As Long
Private Declare Function RegQueryValueEx Lib "advapi32.dll" _
Alias "RegQueryValueExA" _
(ByVal hKey As Long, _
ByVal lpValueName As String, _
ByVal lpReserved As Long, _
lpType As Long, _
lpData As Any, _
lpcbData As Long) As Long
code
Code:
Private Function GetCPUSpeed() As Long
Dim hKey As Long
Dim CPUSpeed As Long
Call RegOpenKey(HKEY_LOCAL_MACHINE, sCPURegKey, hKey)
Call RegQueryValueEx(hKey, "~MHz", 0, 0, CPUSpeed, 4)
Call RegCloseKey(hKey)
GetCPUSpeed = CPUSpeed
End Function
'demo
Private Sub Command1_Click()
Label1.Caption = GetCPUSpeed() & " MHz"
End Sub
Obtaining Information Of CPU
declaration
Code:
Option Explicit
' Name: Obtaining Information About CPU
' Author: Chong Long Choo
' Email: [email protected]
' Date: 11 September 1999
'<--------------------------Disclaimer---------------------->
'
'This sample is free. You can use the sample in any form. Use
'this sample at your own risk! I have no warranty for this
'sample.
'
Private Declare Sub GetSystemInfo Lib "kernel32" (lpSystemInfo _
As SYSTEM_INFO)
Private Type SYSTEM_INFO
dwOemID As Long
dwPageSize As Long
lpMinimumApplicationAddress As Long
lpMaximumApplicationAddress As Long
dwActiveProcessorMask As Long
dwNumberOrfProcessors As Long
dwProcessorType As Long
dwAllocationGranularity As Long
dwReserved As Long
End Type
Public Enum etProcessorType
PROCESSOR_INTEL_386 = 386
PROCESSOR_INTEL_486 = 486
PROCESSOR_INTEL_PENTIUM = 586
PROCESSOR_MIPS_R4000 = 4000
PROCESSOR_ALPHA_21064 = 21064
End Enum
Private tmpSystemInfo As SYSTEM_INFO
code
Code:
Private Sub Class_Initialize()
GetSystemInfo tmpSystemInfo
End Sub
Public Function ProcessorType() As etProcessorType
'See declarations for meaning of returned values
ProcessorType = tmpSystemInfo.dwProcessorType
End Function
Public Function NumberOrfProcessors() As Long
NumberOrfProcessors = tmpSystemInfo.dwNumberOrfProcessors
End Function
Public Function MaximumApplicationAddress() As Long
MaximumApplicationAddress = _
tmpSystemInfo.lpMaximumApplicationAddress
End Function
Public Function MinimumApplicationAddress() As Long
MinimumApplicationAddress = _
tmpSystemInfo.lpMinimumApplicationAddress
End Function
Public Function PageSize() As Long
PageSize = tmpSystemInfo.dwPageSize
End Function
Public Function OemID() As Long
OemID = tmpSystemInfo.dwOemID
End Function
Public Function Reserved() As Long
Reserved = tmpSystemInfo.dwReserved
End Function
Public Function AllocationGranularity() As Long
AllocationGranularity = _
tmpSystemInfo.dwAllocationGranularity
End Function
Public Function ActiveProcessorMask() As Long
ActiveProcessorMask = tmpSystemInfo.dwActiveProcessorMask
End Function