如何在 VB 6 中获取当前的 CPU 和 RAM 使用情况? [英] How to get current CPU and RAM usage in VB 6?

查看:17
本文介绍了如何在 VB 6 中获取当前的 CPU 和 RAM 使用情况?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在 VB 6 代码中获取 CPU 和内存使用情况?谢谢!

how to get the CPU and memory usage in VB 6 code? Thanks!

推荐答案

确定当前机器上的 CPU 使用率

Determine the CPU Usage on the Current Machine

声明

Option Explicit
' Note that if you declare the lpData parameter as String, you
' must pass it By Value.
 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

 Private Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias _
 "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, _
 ByVal ulOptions As Long, ByVal samDesired As Long, _
 phkResult As Long) As Long

 Private Declare Function RegCloseKey Lib "advapi32.dll" _
 (ByVal hKey As Long) As Long

 Private Const KEY_QUERY_VALUE = &H1

 Private Const HKEY_DYN_DATA As Long = &H80000006
 Private Const STAT_DATA = "PerfStatsStatData"
 Private Const CPU_USE = "KERNELCPUUsage"

代码

Public Function CPU_Usage_Percent() As Long
On Error GoTo errorhandler:
Dim lResult As Long
Dim lData As Long
Dim lType As Long
Dim hKey As Long


lResult = RegOpenKeyEx(HKEY_DYN_DATA, STAT_DATA, _
   0, KEY_QUERY_VALUE, hKey)

If lResult = 0 Then
    lResult = RegQueryValueEx(hKey, CPU_USE, 0, _
     lType, lData, 4)
    If lResult = 0 Then
        CPU_Usage_Percent = lData
        lResult = RegCloseKey(hKey)
    End If
End If
Exit Function

 errorhandler:
     On Error Resume Next
     RegCloseKey hKey
     Exit Function
     End Function

这篇关于如何在 VB 6 中获取当前的 CPU 和 RAM 使用情况?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆