Re: Input from keyboard using Native NT API - how to?
От: MShura  
Дата: 10.05.06 08:36
Оценка: 23 (4)
K>Мое приложение использует Native NT API, для того, чтобы работать при загрузке
K>ОС в blue screen, как autochk.exe.

Всех проще посмотреть с помощью IDA как это делает autochk.exe.
Одно могу сказать, что autochk перед тем как показать обратный отсчет открывает 100 клавиатур и ждет "any key" от какой-нибудь.
Причем функции NtReadFile передают Event, его и ждут.

P.S.
Открывают keyboard (NtCreateFile) со следующими ключами

DesiredAccess = GENERIC_READ|SYNCHRONIZE|FILE_READ_ATTRIBUTES, // 0x80100080,
FileAttributes = FILE_ATTRIBUTE_NORMAL
ShareAccess = 0
CreateDisposition = FILE_OPEN; // 1
CreateOptions = FILE_DIRECTORY_FILE; // 1

да и ObjectAttributes инициализируют с Attributes = OBJ_CASE_INSENSITIVE

P.P.S.
Я в своё время делал полноценную работу с клавиатурой. Могу подсказать.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.