01 # -*- coding: utf-8 -*-
02 #
03 # by oldj
04 # http://oldj.net/
05 #
06
07 import pythoncom
08 import pyHook
09
10 def onMouseEvent(event):
11 # 监听鼠标事件
12 print "MessageName:", event.MessageName
13 print "Message:", event.Message
14 print "Time:", event.Time
15 print "Window:", event.Window
16 print "WindowName:", event.WindowName
17 print "Position:", event.Position
18 print "Wheel:", event.Wheel
19 print "Injected:", event.Injected
20 print "---"
21
22 # 返回 True 以便将事件传给其它处理程序
23 # 注意,这儿如果返回 False ,则鼠标事件将被全部拦截
24 # 也就是说你的鼠标看起来会僵在那儿,似乎失去响应了
25 return True
26
27 def onKeyboardEvent(event):
28 # 监听键盘事件
29 print "MessageName:", event.MessageName
30 print "Message:", event.Message
31 print "Time:", event.Time
32 print "Window:", event.Window
33 print "WindowName:", event.WindowName
34 print "Ascii:", event.Ascii, chr(event.Ascii)
35 print "Key:", event.Key
36 print "KeyID:", event.KeyID
37 print "ScanCode:", event.ScanCode
38 print "Extended:", event.Extended
39 print "Injected:", event.Injected
40 print "Alt", event.Alt
41 print "Transition", event.Transition
42 print "---"
43
44 # 同鼠标事件监听函数的返回值
45 return True
46
47 def main():
48 # 创建一个“钩子”管理对象
49 hm = pyHook.HookManager()
50
51 # 监听所有键盘事件
52 hm.KeyDown = onKeyboardEvent
53 # 设置键盘“钩子”
54 hm.HookKeyboard()
55
56 # 监听所有鼠标事件
57 hm.MouseAll = onMouseEvent
58 # 设置鼠标“钩子”
59 hm.HookMouse()
60
61 # 进入循环,如不手动关闭,程序将一直处于监听状态
62 pythoncom.PumpMessages()
63
64 if __name__ == "__main__":
65 main()
02 #
03 # by oldj
04 # http://oldj.net/
05 #
06
07 import pythoncom
08 import pyHook
09
10 def onMouseEvent(event):
11 # 监听鼠标事件
12 print "MessageName:", event.MessageName
13 print "Message:", event.Message
14 print "Time:", event.Time
15 print "Window:", event.Window
16 print "WindowName:", event.WindowName
17 print "Position:", event.Position
18 print "Wheel:", event.Wheel
19 print "Injected:", event.Injected
20 print "---"
21
22 # 返回 True 以便将事件传给其它处理程序
23 # 注意,这儿如果返回 False ,则鼠标事件将被全部拦截
24 # 也就是说你的鼠标看起来会僵在那儿,似乎失去响应了
25 return True
26
27 def onKeyboardEvent(event):
28 # 监听键盘事件
29 print "MessageName:", event.MessageName
30 print "Message:", event.Message
31 print "Time:", event.Time
32 print "Window:", event.Window
33 print "WindowName:", event.WindowName
34 print "Ascii:", event.Ascii, chr(event.Ascii)
35 print "Key:", event.Key
36 print "KeyID:", event.KeyID
37 print "ScanCode:", event.ScanCode
38 print "Extended:", event.Extended
39 print "Injected:", event.Injected
40 print "Alt", event.Alt
41 print "Transition", event.Transition
42 print "---"
43
44 # 同鼠标事件监听函数的返回值
45 return True
46
47 def main():
48 # 创建一个“钩子”管理对象
49 hm = pyHook.HookManager()
50
51 # 监听所有键盘事件
52 hm.KeyDown = onKeyboardEvent
53 # 设置键盘“钩子”
54 hm.HookKeyboard()
55
56 # 监听所有鼠标事件
57 hm.MouseAll = onMouseEvent
58 # 设置鼠标“钩子”
59 hm.HookMouse()
60
61 # 进入循环,如不手动关闭,程序将一直处于监听状态
62 pythoncom.PumpMessages()
63
64 if __name__ == "__main__":
65 main()