我需要在控制台应用程序中检测到按键,而不会提示用户。基本上,我的应用程序通常是一个监听特殊输入设备的守护进程,但我需要在交互模式下使用键盘在开发框上模拟它。我怎样才能做到这一点? - 我在Linux系统上。
答案 0 :(得分:2)
如果您在等待输入时无法阻止,则可以使用例如select
检查STDIN_FILENO
文件描述符是否已准备好进行阅读,如果是,则可以使用普通输入函数(scanf
,fgets
std::getline
,等)。
答案 1 :(得分:0)
您检查answer这解释了如何从输入事件中读取(通常是/dev/input/event0
)
或直接查看答案的来源:
积分不给我,这段代码取自Ventriloctrl hack来获取击键。 http://public.callutheran.edu/~abarker/ventriloctrl-0.4.tar.gz
答案 2 :(得分:-1)
本文解释了如何做这样的事情。 http://thc.org/papers/writing-linux-kernel-keylogger.txt