Compartilhar via


Função GetConsoleProcessList

Recupera a lista dos processos anexados ao console atual.

Sintaxe

DWORD WINAPI GetConsoleProcessList(
  _Out_ LPDWORD lpdwProcessList,
  _In_  DWORD   dwProcessCount
);

Parâmetros

lpdwProcessList [out]
Um ponteiro para um buffer que recebe uma matriz de identificadores de processo após o êxito. Deve ser um buffer válido e não pode ser NULL. O buffer deve ter espaço para receber pelo menos um ID de processo retornado.

dwProcessCount [in]
O número máximo de identificadores de processo que podem ser armazenados no buffer de lpdwProcessList. Deve ser maior que 0.

Valor retornado

Se a função for bem-sucedida, o valor retornado será menor ou igual a dwProcessCount e representará o número de identificadores de processo armazenados no buffer de lpdwProcessList.

Se o buffer for muito pequeno para conter todos os identificadores de processo válidos, o valor retornado será o número exigido de elementos da matriz. A função não terá nenhum identificador armazenado no buffer. Nessa situação, use o valor retornado para alocar um buffer grande o suficiente para armazenar a lista inteira e chamar a função novamente.

Se o valor retornado for zero, a função falhou, pois cada console tem pelo menos um processo associado a ele. Para obter informações de erro estendidas, chame GetLastError.

Se uma lista de processos NULL foi fornecida ou a contagem de processos foi 0, a chamada devolverá 0 e GetLastError devolverá ERROR_INVALID_PARAMETER. Forneça um buffer com ao menos um elemento para chamar essa função. Aloque um buffer maior e faça a chamada outra vez se o código de retorno for maior que o comprimento do buffer fornecido.

Comentários

Para compilar aplicativos que usam essa função, defina _WIN32_WINNT como 0x0501 ou posterior. Para obter mais informações, consulte Usar os cabeçalhos do Windows.

Dica

Essa API não é recomendada e não tem um terminal virtual equivalente. Essa decisão alinha propositalmente a plataforma Windows com outros sistemas operacionais. Esse estado é relevante somente para o contexto de usuário, sessão e privilégio locais. A comunicação remota de aplicativos por meio de utilitários multiplataforma e transportes como SSH pode não funcionar como esperado se essa API é usada.

Requisitos

   
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Cabeçalho ConsoleApi3.h (via WinCon.h, inclui o Windows.h)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

AttachConsole

Funções de Console