Неожиданно возникла такая необходимость - программно зажигать и гасить лампочки на клавиатуре Caps Lock, Num Lock и Scroll Lock. Помнится, под DOS самый низкоуровневый способ заключался в записи байта в какой-то порт. А какой наиболее низкоуровневый способ управления этими лампочками в Виндах?
keybd_event( VK_NUMLOCK, 0x45, KEYEVENTF_EXTENDEDKEY | 0, 0 ); keybd_event( VK_NUMLOCK, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0); ...
Mikl___ вы дублируете первый ответ .) хотя да - вы соблюли этикет интернетов - начинать читать тред надо с собственного сообщения в нём ¦] anyway, теперь задача немного поменялась - надо давать обратный фифект. я помню что это уже было сделано однажды кем-то через дрова, потому надо бы.
Comer_ Через дрова, наверное, RamMerLabs написал: в KmdKit от Four-F был пример управления состоянием светодидов на клавиатуре хотя я в KmdKit не нашел, но можно через дебагер от keybd_event дойти до int 2Eh или до sysenter. А вот в возможности "оторвать" лампочку от капс лока сомневаюсь (если клавиатура исправна )
переработанный пример из KmdKit от Four-F по управлению светодиодами на клавиатуре (сорц и ехе под WinXP)
Переработанный пример из #7. Через int 2Eh программно зажигаем и гасим лампочки Caps Lock, Num Lock и Scroll Lock на клавиатуре. Вопрос: является ли этот способ управления лампочками низкоуровневым в Виндах? Сорц и ехе в аттаче (под WinXP)
Еще один "низкоуровневый" способ зажигать и гасить лампочки на клавиатуре Caps Lock, Num Lock и Scroll Lock, тот самый, о котором но работает под WinXP, во вложении сорц, рц и ехе, там же драйвер r0pc1.sys, который потребуется для сборки ехе. Этот драйвер будет спрятан в рессурсах и будет вытащен из ресурсов на диск при запуске приложения, по завершению приложения драйвер будет удалятся