我有一個程序可以捕獲所有使用pyHook的按鍵,然後運行一些函數。
我注意到,經過一段時間(隨機時間)後,程序停止接收鍵觸發,即使我按鍵?
pyHook是否不穩定?
我沒有改變什麼鍵被按下或過早按下或類似的東西。
這裏是我的代碼:pyHook停止接收按鍵事件(隨機)?
import time
import win32api
import win32con
import pythoncom
import pyHook
import os
import ctypes
def Click(x,y):
win32api.SetCursorPos((x,y))
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,x,y,0,0)
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,x,y,0,0)
def DeleteRun(event):
if event.Ascii == 96:
BreakHook()
return False
Click(1250, 741)
time.sleep(0.2)
Click(649,261)
time.sleep(0.2)
Click(651, 348)
time.sleep(0.2)
Click(800, 442)
time.sleep(0.2)
Click(865, 612)
time.sleep(0.2)
Click(25, 744)
time.sleep(3)
Click(25, 744)
time.sleep(1.5)
Click(1112,297)
Click(145,392)
return True
def BreakHook():
ctypes.windll.user32.PostQuitMessage(0)
KeyGrabber = pyHook.HookManager()
KeyGrabber.KeyDown = DeleteRun
KeyGrabber.HookKeyboard()
pythoncom.PumpMessages()
爲什麼突然停止工作?
即使我通過IDE停止該程序,因爲該進程在我的計算機上保持活動狀態,這非常令人沮喪。
規格:
蟒蛇2.7.2
的Windows 7(32)
你能鏈接我的任何文件/信息解釋這一點? – 2013-04-15 01:34:12
你必須知道PyHook可以做什麼,但很多事情沒有很好解釋或描述不佳。如果您花一點時間閱讀MSDN文檔,那麼可以在那裏找到許多不明原因的東西。特別是一些常數和枚舉值。也可以在ctypes.windll.user32 MSDN文檔中進行挖掘,您會發現更多... – user2097818 2013-04-15 22:23:44