当前位置: 技术问答>linux和unix
Linux下如何截获键盘消息
来源: 互联网 发布时间:2015-10-21
本文导语: 各位大虾,请问Linux下如何截获键盘消息,有源码最好,万分感谢! | 从应用层来做估计麻烦些,还是从内核考虑吧。 有一款工具叫Keylogger,能完成你所需要的功能。 http://www.20cn.net/ns/wz/comp/...
各位大虾,请问Linux下如何截获键盘消息,有源码最好,万分感谢!
|
从应用层来做估计麻烦些,还是从内核考虑吧。
有一款工具叫Keylogger,能完成你所需要的功能。
http://www.20cn.net/ns/wz/comp/data/20020818032524.htm
有一款工具叫Keylogger,能完成你所需要的功能。
http://www.20cn.net/ns/wz/comp/data/20020818032524.htm
|
分三步
1、
#include
2、定义回调函数
void keydown(Gtkwidget * widget,GdkEventKey *event, gpointer data)
{
if(event->keyval == GDK_Return)
g_print("key return be pressed");
}
3、在Main中加入函数
gtk_signal_connect(GTK_OBJECT(window),"key_press_event",GTK_SIGVAL_FUNC(keydown),NULL);
1、
#include
2、定义回调函数
void keydown(Gtkwidget * widget,GdkEventKey *event, gpointer data)
{
if(event->keyval == GDK_Return)
g_print("key return be pressed");
}
3、在Main中加入函数
gtk_signal_connect(GTK_OBJECT(window),"key_press_event",GTK_SIGVAL_FUNC(keydown),NULL);
|
mark
|
学习+up
|
gz
|
呵呵,楼上的就变成跟WINDOWS下差不多了
Linux下面干吗不从内核入手
Linux下面干吗不从内核入手
|
而且从非图形环境启动程序,gtk_init()初始化就失败了,更别说后面的函数了。
因此推荐从内核入手,上面介绍的工具甚至能得到连接linux主机的远程终端的键盘敲计信息(当然不是所有,是操作linux主机那部分的信息),调试估计有点麻烦,因为版本有点老了。不过我在RH9上调试并运行通过,基本还可以吧。
因此推荐从内核入手,上面介绍的工具甚至能得到连接linux主机的远程终端的键盘敲计信息(当然不是所有,是操作linux主机那部分的信息),调试估计有点麻烦,因为版本有点老了。不过我在RH9上调试并运行通过,基本还可以吧。
|
如果是使用python的话:
有一个sys包,你面有两个方法sys.stdin和sys.stdout。
改变这两项的值就可以改变输入和输出的地方。
默认情况下是输入:键盘,输出:屏幕。
有一个sys包,你面有两个方法sys.stdin和sys.stdout。
改变这两项的值就可以改变输入和输出的地方。
默认情况下是输入:键盘,输出:屏幕。