Função GetProcessMemoryInfo (psapi.h)

Recupera informações sobre o uso de memória do processo especificado.

Sintaxe

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

Parâmetros

[in] Process

Um identificador para o processo. O identificador deve ter o direito de acesso PROCESS_QUERY_INFORMATION ou PROCESS_QUERY_LIMITED_INFORMATION . Para obter mais informações, consulte Direitos de acesso e segurança do processo.

Windows Server 2003 e Windows XP: O identificador deve ter os direitos de acesso PROCESS_QUERY_INFORMATION e PROCESS_VM_READ .

[out] ppsmemCounters

Um ponteiro para a estrutura PROCESS_MEMORY_COUNTERS, PROCESS_MEMORY_COUNTERS_EX ou PROCESS_MEMORY_COUNTERS_EX2 que recebe informações sobre o uso de memória do processo.

[in] cb

O tamanho da estrutura ppsmemCounters , em bytes.

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.

Comentários

A partir do Windows 7 e do Windows Server 2008 R2, o Psapi.h estabelece números de versão para as funções PSAPI. O número de versão do PSAPI afeta o nome usado para chamar a função e a biblioteca que um programa deve carregar.

Se PSAPI_VERSION for 2 ou maior, essa função será definida como K32GetProcessMemoryInfo em Psapi.h e exportada em Kernel32.lib e Kernel32.dll. Se PSAPI_VERSION for 1, essa função será definida como GetProcessMemoryInfo em Psapi.h e exportada em Psapi.lib e Psapi.dll como um wrapper que chama K32GetProcessMemoryInfo.

Os programas que devem ser executados em versões anteriores do Windows, bem como no Windows 7 e versões posteriores, sempre devem chamar essa função como GetProcessMemoryInfo. Para garantir a resolução correta de símbolos, adicione Psapi.lib à macro TARGETLIBS e compile o programa com -DPSAPI_VERSION=1. Para usar a vinculação dinâmica em tempo de execução, carregue Psapi.dll.

Exemplos

Para obter um exemplo, consulte Coletando informações de uso de memória para um processo.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [aplicativos da área de trabalho | aplicativos UWP]
Servidor mínimo com suporte Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho psapi.h
Biblioteca Kernel32.lib no Windows 7 e Windows Server 2008 R2; Psapi.lib (se PSAPI_VERSION=1) no Windows 7 e Windows Server 2008 R2; Psapi.lib no Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP
DLL Kernel32.dll no Windows 7 e no Windows Server 2008 R2; Psapi.dll (se PSAPI_VERSION=1) no Windows 7 e no Windows Server 2008 R2; Psapi.dll no Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP

Confira também

EnumProcesses

Informações de desempenho de memória

PROCESS_MEMORY_COUNTERS

PROCESS_MEMORY_COUNTERS_EX

Funções PSAPI

Processar informações de uso de memória