我需要在控制台应用程序中检测按键,而不提示用户。基本上,我的应用程序通常是一个监听特殊输入设备的守护进程,但我需要在开发盒上使用键盘以交互模式模拟它。我怎样才能做到这一点?- 我在 Linux 系统上。
问问题
5047 次
3 回答
2
如果在等待输入时无法阻塞,则可以使用 egselect
检查STDIN_FILENO
文件描述符是否已准备好读取,如果是,则可以使用普通输入函数(scanf
、fgets
std::getline
等)。
于 2012-09-03T09:31:57.190 回答
0
你检查这个答案,它解释了如何从输入事件中读取(通常/dev/input/event0
)
或者直接查看答案的来源:
学分不归我所有,此代码取自 Ventriloctrl hack 以获取击键。 http://public.callutheran.edu/~abarker/ventriloctrl-0.4.tar.gz
于 2012-09-03T09:29:36.637 回答
-1
这篇文章解释了如何做这样的事情。http://thc.org/papers/writing-linux-kernel-keylogger.txt
于 2012-09-03T15:18:11.020 回答