Я написал программу, которая вводится с второй клавиатуры usb (на самом деле сканер штрих-кода). Проблема в том, что если другое окно активно, данные вводятся там, а не в моей программе. Может ли кто-нибудь дать мне совет о том, что я делаю неправильно?
#include <stdio.h>
#include <string.h>
int main(int argc, char * argv[]){
FILE * fp_in;
char * data;
fp_in = fopen("/dev/input/by-id/usb-04d9_1400-event-kbd","r");
if(fp_in == NULL){
fprintf(stderr,"Failed to open input by id\n");
}
fp_in = fopen("/dev/input/by-path/pci-0000:00:1d.1-usb-0:2:1.0-event-kbd","r");
if(fp_in == NULL){
fprintf(stderr,"Failed to open input by path\n");
return 1;
}
while(1){
fscanf(fp_in,data,"%s");
fprintf(stderr,"%s",data);
}
return 0;
}
спасибо
Если я могу быть настолько смелым, чтобы перефразировать вопрос о Confuzzled имени:
Как я могу написать программу под Linux, которая присоединяется к устройству ввода, в данном случае сканеру штрих-кода, чтобы вход не попадал в программу с фокусом клавиатуры?