Compartir a través de


Función GetProcessMemoryInfo (psapi.h)

Recupera información sobre el uso de memoria del proceso especificado.

Sintaxis

BOOL GetProcessMemoryInfo(
  [in]  HANDLE                   Process,
  [out] PPROCESS_MEMORY_COUNTERS ppsmemCounters,
  [in]  DWORD                    cb
);

Parámetros

[in] Process

Identificador del proceso. El identificador debe tener el derecho de acceso PROCESS_QUERY_INFORMATION o PROCESS_QUERY_LIMITED_INFORMATION . Para obtener más información, consulte Derechos de acceso y seguridad de procesos.

Windows Server 2003 y Windows XP: El identificador debe tener los derechos de acceso PROCESS_QUERY_INFORMATION y PROCESS_VM_READ .

[out] ppsmemCounters

Puntero a la estructura de PROCESS_MEMORY_COUNTERS, PROCESS_MEMORY_COUNTERS_EX o PROCESS_MEMORY_COUNTERS_EX2 que recibe información sobre el uso de memoria del proceso.

[in] cb

Tamaño de la estructura ppsmemCounters , en bytes.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es distinto de cero.

Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

Comentarios

A partir de Windows 7 y Windows Server 2008 R2, Psapi.h establece números de versión para las funciones psapi. El número de versión de PSAPI afecta al nombre usado para llamar a la función y la biblioteca que debe cargar un programa.

Si PSAPI_VERSION es 2 o superior, esta función se define como K32GetProcessMemoryInfo en Psapi.h y exportada en Kernel32.lib y Kernel32.dll. Si PSAPI_VERSION es 1, esta función se define como GetProcessMemoryInfo en Psapi.h y exportada en Psapi.lib y Psapi.dll como contenedor que llama a K32GetProcessMemoryInfo.

Los programas que deben ejecutarse en versiones anteriores de Windows, así como Windows 7 y versiones posteriores siempre deben llamar a esta función como GetProcessMemoryInfo. Para garantizar la resolución correcta de símbolos, agregue Psapi.lib a la macro TARGETLIBS y compile el programa con -DPSAPI_VERSION=1. Para usar la vinculación dinámica en tiempo de ejecución, cargue Psapi.dll.

Ejemplos

Para obtener un ejemplo, vea Recopilar información de uso de memoria para un proceso.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [aplicaciones de escritorio | aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP]
Plataforma de destino Windows
Encabezado psapi.h
Library Kernel32.lib en Windows 7 y Windows Server 2008 R2; Psapi.lib (si PSAPI_VERSION=1) en Windows 7 y Windows Server 2008 R2; Psapi.lib en Windows Server 2008, Windows Vista, Windows Server 2003 y Windows XP
Archivo DLL Kernel32.dll en Windows 7 y Windows Server 2008 R2; Psapi.dll (si PSAPI_VERSION=1) en Windows 7 y Windows Server 2008 R2; Psapi.dll en Windows Server 2008, Windows Vista, Windows Server 2003 y Windows XP

Consulte también

EnumProcesses

Información de rendimiento de memoria

PROCESS_MEMORY_COUNTERS

PROCESS_MEMORY_COUNTERS_EX

Funciones de PSAPI

Información de uso de memoria del proceso