ReadConsoleInput
The ReadConsoleInput
function reads data from a console input buffer and removes it from the buffer.
BOOL ReadConsoleInput(
HANDLE hConsoleInput, |
// handle of a
console input buffer |
PINPUT_RECORD lpBuffer, |
// address of the buffer
for read data |
DWORD nLength, |
// number of
records to read |
LPDWORD lpNumberOfEventsRead |
// address of
number of records read |
); |
|
Parameters
hConsoleInput
Identifies
the input buffer. The handle must have GENERIC_READ access.
lpBuffer
Points to an INPUT_RECORD
nLength
Specifies the
size, in input records, of the buffer pointed to by the lpBuffer
parameter.
lpNumberOfEventsRead
Points to a
32-bit variable that receives the number of input records read.
Return Values
If the
function succeeds, the return value is nonzero.
If the
function fails, the return value is zero. To get extended error information,
call GetLastError
Remarks
If the number
of records requested in the nLength parameter exceeds the number of
records available in the buffer, the number available is read. The function
does not return until at least one input record has been read.
A process can
specify a console input buffer handle in one of the wait functions
To determine
the number of unread input records in a console s input buffer, use the GetNumberOfConsoleInputEvents
function. To read input records from a console input buffer without affecting
the number of unread records, use the PeekConsoleInput function. To
discard all unread records in a console s input buffer, use the FlushConsoleInputBuffer
function.
Windows
NT: This function uses either Unicode
characters or 8-bit characters from the console's current codepage. The
console's codepage defaults initially to the system's OEM codepage. To change
the console's codepage, use the SetConsoleCP or SetConsoleOutputCP
functions, or use the chcp or mode con cp select= commands.
See Also