python hook监听事件

python hook监听事件

作者:vpoet

日期:夏季

# -*- coding: utf-8 -*- #
# by oldj http://oldj.net/ #
import pythoncom
import pyHook
def onMouseEvent(event):
   # 监听鼠标事件
   print "MessageName:",event.MessageName
   print "Message:", event.Message
   print "Time:", event.Time
   print "Window:", event.Window
   print "WindowName:", event.WindowName
   print "Position:", event.Position
   print "Wheel:", event.Wheel
   print "Injected:", event.Injected
   print"---"

   # 返回 True 以便将事件传给其他处理程序
   # 注意。这儿假设返回 False ,则鼠标事件将被全部拦截
   # 也就是说你的鼠标看起来会僵在那儿。似乎失去响应了
   return True

def onKeyboardEvent(event):
  # 监听键盘事件
   print "MessageName:", event.MessageName
   print "Message:", event.Message
   print "Time:", event.Time
   print "Window:", event.Window
   print "WindowName:", event.WindowName
   print "Ascii:", event.Ascii, chr(event.Ascii)
   print "Key:", event.Key
   print "KeyID:", event.KeyID
   print "ScanCode:", event.ScanCode
   print "Extended:", event.Extended
   print "Injected:", event.Injected
   print "Alt", event.Alt
   print "Transition", event.Transition
   print "---"
   # 同鼠标事件监听函数的返回值
   return True 

def main():
   # 创建一个“钩子”管理对象
   hm = pyHook.HookManager()
   # 监听全部键盘事件
   hm.KeyDown = onKeyboardEvent
   # 设置键盘“钩子”
   hm.HookKeyboard()
   # 监听全部鼠标事件
   hm.MouseAll = onMouseEvent
   # 设置鼠标“钩子”
   hm.HookMouse()
   # 进入循环。如不手动关闭,程序将一直处于监听状态
   pythoncom.PumpMessages() 

if __name__ == "__main__":
   main()

执行截图:

时间: 2024-08-05 05:16:58

python hook监听事件的相关文章

JAVAscript学习笔记 js句柄监听事件 第四节 (原创) 参考js使用表

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>句柄添加监听事件</title> <script type="text/javascript" src="tzy.js"></script> </head> <body>

浅谈postMessage多页面监听事件

最近做了一个Echarts和Highcharts多图多页面连动的效果,就用到postMessage 如下介绍: 最开始在最外围的页面也就是所有页面的父级页面添加postMessage监听事件以便监听下面子级页面的动态,代码: window.parent.addEventListener('message',function(e){ if(e.source != window.parent) return; var names = localStorage.getItem("toName"

ios ---键盘的监听事件

//在view将要出现的时候重载viewWillAppear方法添加通知 监听事件 keyboardWillShow:  keyboardWillHide: - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:

js html 交互监听事件学习

事件处理程序(handler): HTML事件处理程序: <input type="button" value="Click Here" onclick="showMessage();" /> <script type="text/javascript"> function showMessage() { alert('Clicked!'); } JavaScript指定事件处理程序: <inpu

Android中Button的五种监听事件

简单聊一下Android中Button的五种监听事件: 1.在布局文件中为button添加onClick属性,Activity实现其方法2.匿名内部类作为事件监听器类3.内部类作为监听器4.Activity本身作为事件监听器,实现onClickListener5.外部类作为监听器 ButtonListenerActivity.class public class ButtonListenerActivity extends AppCompatActivity implements View.On

Android——监听事件总结1

各种监听事件 1.按钮 Button(1)点击监听 btn_1.setOnClickListener(new View.OnClickListener() { (2)长按监听 btn_1.setOnLongClickListener(new View.OnLongClickListener() { 2.单选框 RadioGroup radio_gp.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { 3.复选

datePicker 及 timePicker 监听事件 获取用户选择 年月日分秒信息

public class MainActivity extends AppCompatActivity { private TimePicker timePicker; private DatePicker datePicker; private Calendar cal; private int year; private int month; private int day; private int hour; private int minute; @Override protected

Android中Preference的使用以及监听事件分析

> 在Android系统源码中,绝大多数应用程序的UI布局采用了Preference的布局结构,而不是我们平时在模拟器中构建应用程序时使用的View布局结构,例如,Setting模块中布局.当然,凡事都有例外,FMRadio应用程序中则使用了View布局结构(可能是该应用程序是marvel公司提供的,如果由google公司做,那可说不准).归根到底,Preference布局结构和View的布局结构本质上还是大同小异,Preference的优点在于布局界面的可控性和高效率以及可存储值的简洁性(每个

监听事件 实现的四种方法

1.初始化当前所需要控件,如何初始化一个控件…………private Button xxxxfindViewById---返回的是一个View的对象…………需要强转成其子类Button对象findViewById---是如何查找View的Id…………通过R中的ID2.设置Button的监听器,通过监听器实现我们点击Button需要操作的事情 方式一: 匿名内部类实现事件监听:在按钮的setOnClickListener方法中new一个OnClickListener类,并在OnClickListen