我正在使用以下代码将击键发送到应用程序:
import win32com.client
import time
process_id = 2032 # I change this value if needed
shell = win32com.client.Dispatch("WScript.Shell")
shell.AppActivate(process_id)
shell.SendKeys('^o')
time.sleep(.5)
# more input ...
问题是:在某些时候一切都变得艰难,这意味着:由于某种原因,应用程序正在挂起(无法预测多长时间和时间!)。例如,该击键可以执行其他操作,而不是通过{ENTER}命令单击“确定”按钮。之后,所有击键都把事情弄乱了,因为它们没有按预期执行操作。顺便说一下,使用time.sleep和win32api.sleep有区别吗?并且是否有系统的方法来检查我正在发送击键的应用程序是否再次处于稳定的就绪状态?