Заставить переключатель извлечения клавиатуры работать
Я использую Linux. Мой переключатель клавиатуры для извлечения CDROM не работает, хотя на экране отображается кнопка извлечения. Я должен заставить это работать. Я знаю, что извлечь компакт-диск с помощью системного вызова так же просто, как
ioctl(cdromfd,CDROMEJECT,0)
Но я не знаю, как подключить исполняемый файл, содержащий указанный выше системный вызов и событие нажатия клавиши извлечения? Или я буду полагаться на уровень ядра? Если то как?
2 ответа
Ты можешь использовать
system ("eject");
или же
fp = popen("eject", "r");
close(fp);
Вы должны настроить, например, среду рабочего стола, чтобы поймать ключ, и вызвать eject
Команда для правильного устройства. Программирование не требуется.
Чтобы узнать код ключа, используйте, например, xev
команда.
Если вы не хотите, чтобы клавиша Eject была доступна вообще, но только в созданной вами программе, вам нужно добавить проверку событий клавиатуры в свой цикл обработки событий и проверить код клавиши, полученный вами. xev
,