Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Lê dados de um buffer de entrada do console e os remove do buffer, com comportamento configurável.
Sintaxe
BOOL WINAPI ReadConsoleInputEx(
_In_ HANDLE hConsoleInput,
_Out_ PINPUT_RECORD lpBuffer,
_In_ DWORD nLength,
_Out_ LPDWORD lpNumberOfEventsRead,
_In_ USHORT wFlags
);
Parâmetros
hConsoleInput [em]
Um identificador para o buffer de entrada do console. O identificador deve ter o direito de acesso GENERIC_READ. Para obter mais informações, consulte Segurança do buffer de console e direitos de acesso.
lpBuffer [saída]
Um ponteiro para uma matriz de estruturas INPUT_RECORD que recebe os dados do buffer de entrada.
nLength [in]
O tamanho da matriz apontada pelo parâmetro lpBuffer , em elementos de matriz.
lpNumberOfEventsRead [saída]
Um ponteiro para uma variável que recebe o número de registros de entrada lidos.
wFlags [em]
Um conjunto de sinalizadores (combinados por OU) que especificam o comportamento de leitura do console.
| Valor | Significado |
|---|---|
CONSOLE_READ_NOREMOVE0x0001 |
Deixe os eventos no buffer de entrada (como em PeekConsoleInput) |
CONSOLE_READ_NOWAIT0x0002 |
Retorne imediatamente, mesmo que não haja eventos no buffer de entrada. |
Valor de retorno
Se a função for bem-sucedida, o valor de retorno será diferente de zero.
Se a função falhar, o valor de retorno será zero. Para obter informações de erro estendidas, chame GetLastError.
Observações
Esta função é uma versão configurável do ReadConsoleInput. Consulte as observações para ReadConsoleInput obter mais detalhes operacionais.
Chamar ReadConsoleInputEx com as bandeiras CONSOLE_READ_NOREMOVE | CONSOLE_READ_NOWAIT equivale a chamar PeekConsoleInput.
Esta função não existe nos cabeçalhos da consola Windows. Para obter acesso a ele a partir de um aplicativo C ou C++, inclua as seguintes declarações e vincule dinamicamente kernel32.dll como observado acima.
#ifndef CONSOLE_READ_NOREMOVE
#define CONSOLE_READ_NOREMOVE 0x0001
#endif
#ifndef CONSOLE_READ_NOWAIT
#define CONSOLE_READ_NOWAIT 0x0002
#endif
BOOL
WINAPI
ReadConsoleInputExA(
_In_ HANDLE hConsoleInput,
_Out_writes_(nLength) PINPUT_RECORD lpBuffer,
_In_ DWORD nLength,
_Out_ LPDWORD lpNumberOfEventsRead,
_In_ USHORT wFlags);
BOOL
WINAPI
ReadConsoleInputExW(
_In_ HANDLE hConsoleInput,
_Out_writes_(nLength) PINPUT_RECORD lpBuffer,
_In_ DWORD nLength,
_Out_ LPDWORD lpNumberOfEventsRead,
_In_ USHORT wFlags);
Requerimentos
| Cliente mínimo suportado | Windows 7 [apenas aplicações de ambiente de trabalho] |
| Servidor mínimo suportado | Windows Server 2003 [apenas aplicações de ambiente de trabalho] |
| Cabeçalho | nenhuma, ver observações |
| Biblioteca | nenhuma, ver observações |
| DLL | Kernel32.dll |
| Nomes Unicode e ANSI | ReadConsoleInputExW (Unicode) e ReadConsoleInputExA (ANSI) |