ReadConsoleInput
ReadConsoleInput
считывает данные из входного буфера консоли и удаляет их оттуда.
BOOL ReadConsoleInput( HANDLE hConsoleInput, PINPUT_RECORD lpBuffer, DWORD nLength, LPDWORD lpNumberOfEventsRead );
Параметры
GENERIC_READ
.lpBuffer
, которое необходимо получить.Возвращаемое значение
В случае успеха возвращается ненулевое значение.
Если функция завершается неудачно, возвращается ноль.
Для получения дополнительной информации вызывайте функцию GetLastError
.
Замечания
Если число записей, запрашиваемых параметром nLength
превышает число записей,
доступных в буфере, будут считаны только доступные. Функция не возвращает
управление, пока хоть одна запись не будет прочитана.
Процесс может указать описатель входного буфера консоли в одной из функций ожидания для определения присутствия непрочитанного консольного ввода. Когда входной буфер не пуст, объект входной буфер консоли становится свободным.
Для определения числа непрочитанных сообщений во входном буфере используйте
функцию GetNumberOfConsoleInputEvents
-
Эта функция использует либо Unicode, либо 8-битовые символы из текущей кодовой страницы консоли.
Кодовая страница консоли по умолчанию равна системной OEM странице.
Для смены кодовой страницы используйте функции SetConsoleCPили SetConsoleOutputCP , или используйте команды chcp
илиmode con cp select=
.