Отправляет email-рассылки с помощью сервиса Sendsay

WinAPI на русском

  Все выпуски  

WinAPI на русском


Информационный Канал Subscribe.Ru

Здравствуйте, уважаемые подписчики. Перед вами очередной выпуск рассылки "WinAPI
на русском".

Сайт рассылки: http://www.bcbdev.ru. Материалы по Win32 API, C++Builder.

Раздел "WinAPI": http://www.bcbdev.ru/winapi.htm
Раздел "C++Builder": http://www.bcbdev.ru/cbuilder.htm
Раздел "Примеры кода": http://www.bcbdev.ru/codesamples.htm
Раздел "MSDN по-русски": http://www.bcbdev.ru/msdn/index.php

Обновления на сайте

В раздел Примеры кода добавился пример "Проверка порта на соединение по нему"

Перевод

Сегодня вашему вниманию представлен перевод функции ReadConsoleInput.

ReadConsoleInput

Функция ReadConsoleInput читает данные из консольного буфера ввода и удаляет
их из буфера. 

BOOL ReadConsoleInput(
  HANDLE hConsoleInput,         // дескриптор буфера ввода консоли
  PINPUT_RECORD lpBuffer,       // буфер данных
  DWORD nLength,                 // число записей для чтения
  LPDWORD lpNumberOfEventsRead  // число прочитанных записей
);
Параметры
hConsoleInput 
[in] Дескриптор консольного буфера ввода. Дескриптор должен иметь право доступа
GENERIC_READ. Для получения дополнительной информации, см. статью Защита буфера
и права доступа в консоли. 
lpBuffer 
[out] Указатель на массив структур INPUT_RECORD , который принимает данные буфера
ввода. Общий размер требуемого массива должен быть меньше чем 64КБ. 
nLength 
[in] Размер массива, указанного параметром lpBuffer, в элементах массива. 
lpNumberOfEventsRead 
[out] Указатель на переменную, которая принимает число прочитанных записей вводимых
данных. 
Возвращаемое значение
Если функция завершается успешно, величина возвращаемого значения - не ноль.

Если функция завершается с ошибкой, величина возвращаемого значения - ноль. Чтобы
получать расширенные данные об ошибках, вызовите функцию GetLastError. 

Примечания
Если число записей, предписываемых в параметре nLength, превышает число записей,
доступных в буфере, читается доступное число. Функция не возвращает значения
до тех пор, пока, по крайней мере, не будет прочитана одна запись вводимых данных.


Процесс может установить консольный дескриптор буфера ввода в одной из функций
ожидания, чтобы выяснить, когда имеется непрочитанный консольный ввод данных.
Когда буфер ввода не пуст, состояние консольного дескриптора буфера ввода является
сигнальным. 

Чтобы выяснять число непрочитанных записей вводимых данных в буфере ввода консоли,
используйте функцию GetNumberOfConsoleInputEvents. Чтобы читать записи вводимых
данных из консольного буфера ввода без воздействия на число непрочитанных записей,
используйте функцию PeekConsoleInput. Чтобы сбросить все непрочитанные записи
в буфере ввода консоли, используйте функцию FlushConsoleInputBuffer . 

Windows NT /2000/XP: эта функция использует или символы Unicode или 8-разрядные
символы от текущей кодовой страницы консоли. Кодовая страница консоли вначале
устанавливается по умолчанию как системная кодовая страница (OEM). Чтобы изменить
кодовую страницу консоли, используйте функции SetConsoleCP или SetConsoleOutputCP
, или используйте команды chcp или mode con cp select =. 

Windows 95/98/Me: функция ReadConsoleInputW поддерживает Microsoft Layer for
Unicode. Чтобы использовать его, Вы должны добавить некоторые файлы к вашему
приложению, как изложено в Microsoft Layer for Unicode для систем Windows 95/98/Me
 .

Пример смотри в статье Чтение событий буфера вводимых данных. 

Требования 
  Windows NT/2000 или более поздняя версия: Требуется Windows NT 3.1 или новее.
  Windows 95/98/Me: Требуется Windows 95 или новее.
  Заголовочный файл: Определено в Wincon.h; Подключать Windows.h.
  Библиотека: Использовать Kernel32.lib.
  Unicode: Реализуется как Unicode и ANSI в версиях Windows NT/2000/XP.

Смотри также

FlushConsoleInputBuffer, GetNumberOfConsoleInputEvents, INPUT_RECORD, PeekConsoleInput,
ReadConsole, ReadFile, SetConsoleCP, SetConsoleOutputCP, WriteConsoleInput 

Справочник по WinAPI: http://www.bcbdev.ru/winapi/win32api.exe
Справочник по WinAPI (zip-версия): http://www.bcbdev.ru/winapi/win32api.zip
Дружественная рассылка "Программирование на WinAPI": http://subscribe.ru/catalog/comp.soft.prog.russianmsdn

С уважением, 
ведущий рассылки
Тарас Сорока.
mailto:tnsoroka@ua.fm

http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.winapi19743
Отписаться

В избранное