我正在创建一个Python批处理脚本,该脚本必须作为C:\下的Windows可执行文件运行。流程已经几乎设置好了。但是,在启动之前,该可执行文件需要一些键盘输入。在尝试通过
我现在已经尝试使用win32com附加程序SendKeys(见下文),但现在主要脚本在可执行文件完成之前继续运行。有关您的代码的建议吗?我能否记录可执行文件的退出状态以使用while循环只需让主进程休眠直到可执行文件完成?
任何其他聪明的建议都将不胜感激!
subprocess.call()
传递键盘输入之前,它可以正常工作,但我无法让communicate()
的语法正常工作。 下面是已注释掉的代码。我现在已经尝试使用win32com附加程序SendKeys(见下文),但现在主要脚本在可执行文件完成之前继续运行。有关您的代码的建议吗?我能否记录可执行文件的退出状态以使用while循环只需让主进程休眠直到可执行文件完成?
#subprocess.call(r"C:\LTR_STRUC\LTR_STRUC_1_1.exe")
shell = win32com.client.Dispatch("WScript.shell")
Return = shell.Run(r"C:\LTR_STRUC\LTR_STRUC_1_1.exe")
time.sleep(2)
shell.AppActivate(r"C:\LTR_STRUC\LTR_STRUC_1_1.exe")
shell.SendKeys("y", 0)
shell.SendKeys("{Enter}", 0)
time.sleep(1)
shell.SendKeys("y", 0)
shell.SendKeys("{Enter}", 0)
time.sleep(1)
shell.SendKeys("{Enter}", 0)
###...and on goes the code...
任何其他聪明的建议都将不胜感激!