启动脚本完成执行后RunWait没有返回

时间:2017-11-23 16:25:37

标签: python autoit

我正在尝试使用以下代码从我的AutoIt脚本执行Python脚本:

data()

该脚本工作正常并正确完成主要功能,我保留了一个日志来验证这一点。

但是在$result = RunWait('path_to_python/python.exe script.py', 'path_to_script_file) 调用之后,我的AutoIt脚本没有继续进行。我错过了什么?

1 个答案:

答案 0 :(得分:0)

根据Documentation - Function Reference - RunWait()

  

运行外部程序并暂停脚本执行,直到程序完成。

  • 请改用Run()
  • 可以等待一段时间以结束执行;例如:

    Global Const $g_sPathExecutable = 'path_to_python\python.exe script.py'
    Global Const $g_sPatWdir        = 'path_to_script_file'
    Global Const $g_iDelayExecution = 1000 * 10; 10 seconds
    Global Const $g_iPID            = Run($g_sPathExecutable, $g_sPatWdir)
    
    Sleep($g_iDelayExecution)
    ProcessClose($g_iPID)
    
  • 如果{1}}在Python脚本执行后保持活动状态,则可能会从Python脚本中关闭。

  • 或者将Python脚本编译为可执行文件,然后从AutoIt脚本运行它(如果同一个python.exe实例同时作为多个Python脚本进程的父级保持活动状态)。