Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.11.2010, 21:53   #1
Enchance
Пользователь
 
Регистрация: 20.10.2009
Сообщений: 23
По умолчанию Блокировка клавиши с использованием прерываний, C++ (gcc), Linux

Добрый день.
Мне нужно сделать лабораторную работу: при нажатии на "left_shift + left_ctrl + F2" заблокировать клавишу "2"
Где можно почитать про блокировку клавиш с помощью прерываний в gcc? По даному запросу не нашел ничего полезного, и я даже не знаю, куда копать. Может, есть какая-то особенная функция для блокировки клавиш, либо есть полезная литература, которая мне поможет?
Enchance вне форума Ответить с цитированием
Старый 15.11.2010, 13:31   #2
guz
Пользователь
 
Регистрация: 29.10.2010
Сообщений: 29
По умолчанию

Есть предположение, что копать нужно в сторону драйвера клавиатуры в ядре (уж там то всё можно сделать), возможно можно проще с помощью xorg и/или hald, но это вряд-ли. Ведь "заблокировать клавишу" значит сделать так - чтобы система не реагировала на нажатие этой клавиши вообще, так? Книга "Linux Device Drivers" тебе, думаю, поможет.
guz вне форума Ответить с цитированием
Старый 15.11.2010, 23:40   #3
Enchance
Пользователь
 
Регистрация: 20.10.2009
Сообщений: 23
По умолчанию

Ладно, а вобще в линуксе есть какие-либо утилиты, чтобы сделать такое? Через консоль или еще как-нибуть?
Мне не обязательно блокировать клавишу именно через прерывания, просто у меня есть пример для компилятора Борланд, в котором даное действие реализовано через сабж, используя библиотеку dos.h . Это только сейчас я понял, что у линукса принципиально другая архитектура, и так просто сделать это не получится.
Enchance вне форума Ответить с цитированием
Старый 16.11.2010, 10:36   #4
guz
Пользователь
 
Регистрация: 29.10.2010
Сообщений: 29
По умолчанию

Ну, в vfs линухи есть две файловые системы /dev и /proc (всмысле два каталога в корневом каталоге), которые содержат всякие файлы устройств, за которые в свою очередь отвечают драйвера. Эти файлы можно юзать по-разному: можно просто read()/write(), fread()/fwrite(), а можно fcntl() и ioctl().
Кроме управления из программы можно юзать stty, возможно есть и другие утилиты.
guz вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
gcc и winapi bullvinkle Win Api 4 21.06.2010 16:21
команда addswl, linux, gcc rand8154 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 10 22.10.2009 08:02
Блокировка клавиши. Перехват 09h. Порты. Anrih Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 18.09.2009 23:12
проблема с gcc d9m0n Qt и кроссплатформенное программирование С/С++ 6 04.09.2009 02:30
вопрос по GCC XAOC-forever Qt и кроссплатформенное программирование С/С++ 7 07.04.2009 19:17