次のように私はいくつかのpython(2.7.13)のコードを持っている:のPythonのctypesキーボードイベント
import win32api, win32con, ctypes
ctypes.windll.user32.keybd_event(0xA5, 0, 0, 0) # Right Menu Key
ctypes.windll.user32.keybd_event(0x73, 0, 0, 0) # F4
ctypes.windll.user32.keybd_event(0x0D, 0, 0, 0) #Enter Key
私は、私は、Pythonを閉じた後も、コードの私のコンピュータのバグを実行するたびに。 altキーが常に押されているようです。 altキーを手動で押すと、これは停止します。
もう1つのことは、このコードはシェルを閉じることです。右のメニューキーコードでのみ動作し、altキーコードや左のメニューキーコードでは動作しません。 (私はシェルを閉じるには、他の方法がある知っているが、これは何かを閉じます。)ここで
は私が知りたいです:
- なぜこれがALTキーを押したままにしていますか?
- これを私のコードでどうやって止めるのですか?
- altキーコードまたはleft-menuキーコードでこれが機能しないのはなぜですか?
ありがとうございました。
入力を偽装することによってアプリケーションを自動化することは悪い考えです。代わりに、オートメーションインターフェイス([UI Automation](https://msdn.microsoft.com/en-us/library/windows/desktop/ee684009.aspx))を使用する必要があります。あなたの実際の質問について:あなたはキーアップイベントを注入しないので、システムは[Alt]キーが押されたと仮定します。それが期待される。 – IInspectable
@IInspectableあなたの助けていただきありがとうございますが、あなたが言ったようにキーアップイベントを追加するにはどうすればいいですか? – Sank6
'KEYEVENTF_KEYUP'フラグを[keybd_event](https://msdn.microsoft.com/en-us/library/windows/desktop/ms646304.aspx)に渡します。 – IInspectable