Windows 컴퓨터에서 python 2.7을 통해 키보드 명령을 보내려고합니다. SendKeys 모듈이 2.7에서 작동하지 않는다는 것을 이해합니다. 그래서 대신 win32 API에서 keybd_event를 사용합니다.Python이 창문에 키를 보냅니다.
나가 보내고 싶은 열쇠는 단어를 선택하기 위해 shift + left입니다. 이것은 코드입니다.
win32api.keybd_event(win32con.VK_LSHIFT,0,win32con.KEYEVENTF_EXTENDEDKEY | 0,0)
win32api.keybd_event(win32con.VK_LEFT,0,0,0)
win32api.keybd_event(win32con.VK_LSHIFT,0,win32con.KEYEVENTF_EXTENDEDKEY | win32con.KEYEVENTF_KEYUP,0)
이 모든 것이 작동합니다. 그러나 시프트 키는 계속 우울하게 유지됩니다! 내가 그 과정을 죽인 후에도. 이후 shift 키를 해제하는 유일한 방법은 물리적으로 capslock을 누른 다음 shift + 키를 누른 다음 capslock을 해제하는 것입니다. 이 문제와 매우 유사합니다. http://www.bigresource.com/Tracker/Track-vb-RvVMlrAbZn/
어떻게해야할까요?
미리 감사드립니다.
을합니다. 'scanCode = MapVirtualKey (VK_LSHIFT, MAPVK_VK_TO_VSC)'호출하여 keybd_event 메서드에 전달하십시오. – combatdave
답장을 보내 주셔서 감사합니다. 방금 시도한 : scanCode = win32api.MapVirtualKey (win32con.VK_LSHIFT, 0) MAPVK_VK_TO_VSC 찾을 수 없기 때문에 나는 거기에 0으로 설정합니다. 그러나 여전히 불행하게도 작동하지 않습니다. – Mohamad
전화를 건 후에 어떤 값이 scanCode에 있습니까? – combatdave