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