通过KeyID将按键发送到Python中的特定程序

时间:2018-12-03 03:53:17

标签: python python-3.x keyboard pywin32

我正在尝试将按键发送到特定程序,但是我希望能够使用键盘上的所有键,并且SendKeys似乎非常有限。

当前我正在使用:

from win32com.client import Dispatch

wsh = Dispatch('WScript.Shell')
wsh.AppActivate('Program_Name')
wsh.SendKeys('{PGUP}')

是否有一种方法可以将KeyID的按键发送到指定的程序,或者是实现我的目标的另一种方法?例如,NumPad0的扫描代码与insert82)相同,但是它们具有唯一的KeyID。否则,是否有其他方法可以将按键发送到给定程序?

我知道KeyID发送按键的唯一方法是使用win32api

from win32 import win32api

key_id = 0x60  # NumPad0 KeyID
win32api.keybd_event(key_id, 0, win32con.KEYEVENTF_KEYUP, 0)

但是,这模拟了我相信键盘上的按键,因此整个系统都会接收到该事件。

0 个答案:

没有答案