' Déclarations API
Public Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Public Const PROCESS_VM_READ As Long = (&H10)
Public Const PROCESS_QUERY_INFORMATION As Long = (&H400)
Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Public Declare Function GetProcessMemoryInfo Lib "PSAPI.DLL" (ByVal HProcess As Long, ppsmemCounters As PROCESS_MEMORY_COUNTERS, ByVal cb As Long) As Long
' Pour la taille d'un processus
Type PROCESS_MEMORY_COUNTERS
cb As Long ' Taille de la structure
PageFaultCount As Long ' Nombre d'erreurs de page
PeakWorkingSetSize As Long ' Utilisation max de la mémoire RAM
WorkingSetSize As Long ' Utilisation de la mémoire RAM
QuotaPeakPagedPoolUsage As Long ' Utilisation max de la mémoire paginée
QuotaPagedPoolUsage As Long ' Utilisation de la mémoire paginée
QuotaPeakNonPagedPoolUsage As Long
QuotaNonPagedPoolUsage As Long
PagefileUsage As Long ' Utilisation de la mémoire virtuelle
PeakPagefileUsage As Long ' Utilisation max de la mémoire virtuelle
End Type
'---------------------------------------------------------------------------------------
' Procedure : GetProcessMemoryUsage
' DateTime : 23/11/2006 15:34
' Author : Vb System Library
' Purpose : Renvoie une structure PROCESS_MEMORY_COUNTERS contenant toutes
' les infos sur l'utilisation mémoire du processus
' Params : ProcessID : ID du processus
'---------------------------------------------------------------------------------------
Public Function GetProcessMemoryInfos(ByVal ProcessID As Long) As PROCESS_MEMORY_COUNTERS
Dim hProcess As Long
Dim pmc As PROCESS_MEMORY_COUNTERS
' Récupère le handle du processus à partir de son identifiant
hProcess = OpenProcess(PROCESS_QUERY_INFORMATION Or PROCESS_VM_READ, 0, ProcessID)
' On prépare pmc
pmc.cb = LenB(pmc)
' On récupère les infos du processus
GetProcessMemoryInfo hProcess, pmc, pmc.cb
CloseHandle hProcess
GetProcessMemoryInfos = pmc
End Function
Le 30/12/2006 par MadMatt : Petit bug daffichage
Le 02/01/2007 par MadMatt : ajout de toutes les infos sur la mémoire
Seul les admins et l'auteur du code lui même peuvent modifier ce code.