我的键盘有音量控制。我正试图直接触发/模拟音量增加事件。使用xxd -c 24 event5
,我可以监控文件包含的内容。当我使用实际的音量按钮时,它会正常触发它。下面是一个C脚本,用于写入按钮发送的确切数据。
int main()
{
int f = open("/dev/input/event5", O_WRONLY);
if(f == -1)
{
perror("Could not open event5");
return 1;
}
struct input_event e;
gettimeofday(&e.time, 0);
e.type = 0x0400;
e.code = 0x0400;
e.value = 0x0e9000c00;
write(f, &e, sizeof(e));
gettimeofday(&e.time, 0);
e.type = 0x0100;
e.code = 0x7300;
e.value = 0x01000000;
write(f, &e, sizeof(e));
gettimeofday(&e.time, 0);
e.type = 0x0000;
e.code = 0x0000;
e.value = 0x00000000;
write(f, &e, sizeof(e));
return 0;
}
但是xxd -c 24 event5
没有检测到写入,也没有在我的桌面上触发音量增加操作。
文件正常打开没有错误。但是我仍然怀疑open命令有问题。这让我想问
你如何写这种类型的文件?
crw-rw---- 1 root input 13, 69 Feb 1 17:26 event5