Python의 런타임 오류

Preezzzy

파이썬의 키 누름과 마우스 이벤트에서 얻을 수있는 정보를 가지고 놀았는데 프로그램을 종료 할 때이 오류가 발생하는 것을 제외하고는 모든 것이 작동하는 것 같습니다.

런타임 오류 R6031-CRT를 두 번 이상 초기화하려고했습니다. 이는 애플리케이션의 버그를 나타냅니다.

여기에 'q'를 누르고 프로그램이 종료 될 때만 발생하는 코드가 아닙니다.

import pythoncom, pyHook, sys
def OnMouseEvent(event):
    # called when mouse events are received
    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 '---'
    return True

def OnKeyboardEvent(event):
    print "Message Name: ", 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 '---'
    if chr(event.Ascii) == 'q':
        sys.exit()
    return True

hm = pyHook.HookManager()
hm.KeyDown = OnKeyboardEvent
hm.MouseDown = OnMouseEvent
hm.HookKeyboard()
hm.HookMouse()
pythoncom.PumpMessages()

도움을 주셔서 미리 감사드립니다!

PythonAndPascal

적절한 종료를 수행하려면 만든 후크를 "언 후크"해야합니다.

"pythoncom.PumpMessages ()"ever-lasting-loop를 종료하려면 :

    if chr(event.Ascii) == 'q':
        ctypes.windll.user32.PostQuitMessage(0)

다음 코드는 Python 2.7.6이 설치된 Windows 7에서 올바르게 작동합니다. Python 3.4에서 작동하도록 만드는 방법을 아직 알아 내지 못했지만 알게되면 돌아올 것입니다!

import pythoncom, pyHook
import ctypes
import sys


def OnMouseEvent(event):
    # called when mouse events are received
    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('---')
    return True

def OnKeyboardEvent(event):
    print("Message Name: ", 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('---')
    if chr(event.Ascii) == 'q':
        ctypes.windll.user32.PostQuitMessage(0)
    return True


print("")
print('Python version:')                                            
print((sys.version))
print("")

hm = pyHook.HookManager()       # create a hook manager

hm.MouseAll = OnMouseEvent      # watch for all mouse events
hm.HookMouse()                  # set the hook

hm.KeyDown = OnKeyboardEvent    # watch for "OnKeyboardEvent"
hm.HookKeyboard()               # set the hook

pythoncom.PumpMessages()


# if you reached this point you have terminated the program correctly!
# flush and close any open files etc.

hm.UnhookMouse()
hm.UnhookKeyboard()

print("")
print("The end of Mouse and KBD test!")
print("")

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Python의 런타임 오류

분류에서Dev

pymel의 런타임 오류

분류에서Dev

Perl의 런타임 오류

분류에서Dev

AndroidAnnotations의 런타임 오류

분류에서Dev

customAdapter의 런타임 오류

분류에서Dev

MediaPlayer 및 imagebutton의 런타임 오류

분류에서Dev

Tomcat 6의 Toplink 런타임 오류

분류에서Dev

Java의 NZEC 런타임 오류

분류에서Dev

AsyncTask 클래스의 런타임 오류

분류에서Dev

UVa 594의 런타임 오류

분류에서Dev

SPOJ의 NZEC 런타임 오류

분류에서Dev

VBA 매크로의 런타임 오류

분류에서Dev

C ++ 코드의 런타임 오류

분류에서Dev

코드 C ++의 런타임 오류

분류에서Dev

코드의 런타임 오류

분류에서Dev

런타임 오류 '424'-Excel의 VBA

분류에서Dev

Linux Mint의 Vega 런타임 오류

분류에서Dev

http setRequestHeader의 런타임 오류

분류에서Dev

런타임 오류 (NZEC)-Python / Codechef

분류에서Dev

업데이트 문 런타임 오류 3144의 구문 오류

분류에서Dev

Python의 런타임 오류 : "최대 재귀 깊이 초과"

분류에서Dev

라텍스 build_pdf 모듈의 런타임 오류-Python

분류에서Dev

python3 용 codechef의 런타임 오류 (NZEC)

분류에서Dev

가져 오는 동안 Scikit-learn의 런타임 오류

분류에서Dev

Pytorch의 빈 배치에 대한 런타임 오류입니다.

분류에서Dev

for 루프의 사전에 키 추가, 런타임 오류 발생

분류에서Dev

docker : 데몬의 오류 응답 : OCI 런타임 생성 실패 :

분류에서Dev

Keras AveragePooling2D의 런타임 오류

분류에서Dev

IIS .Net 런타임 오류의 Googlewebauthorizationbroker.AuthorizeAsync