Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > Управление индикаторами клавиатуры


Автор: freeKODE 5.8.2011, 13:43
Нужно получить доступ к индикаторам клавы (вкл\выкл делать)
Вот пример на перле, работает, без запуска от рута
Код

#!/usr/bin/perl
open(FH, "/dev/console") or die "open";
ioctl(FH, 0x4b32, 1); # scroll lock on
ioctl(FH, 0x4b32, 2); # num lock on
ioctl(FH, 0x4b32, 4); # caps lock on
ioctl(FH, 0x4b32, 0); # all off
close(FH);


Вот пример на Си, нихрена не работает даже от рута
Код

#include <fcntl.h>
#include <unistd.h>
#include <linux/kd.h>
#include <sys/ioctl.h>
main() {
    int fd;
    open("/dev/console", fd);
    ioctl(fd, KDSETLED, 7);
}


Где косяк?

Автор: bsa 8.8.2011, 09:59
Цитата(freeKODE @  5.8.2011,  13:43 Найти цитируемый пост)
open("/dev/console", fd);

Код
fd = open("/dev/console", O_RDWR);

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)