小编use*_*670的帖子

我怎么能等到外部过程完成?

所以我在Delphi中创建了一个表单,允许我运行各种配置的各种sikuli脚本.我现在正在做的是让使用该表单的人可以设置各种sikuli脚本以便一个接一个地运行.如:

第1步:使用ConfigFile1的SikuliScript1.第2步:使用ConfigFile2的SikuliScript2.等...这是我的代码到目前为止:

procedure TSikRunForm.btnRunClick(Sender: TObject);
begin
    DirCombo:= '/C '+DirSik+'\sikuli-script.cmd' +' -r ' + DirScript + ' --args '+DirConfig;
    if SikFound then begin
      ShellExecute(Handle, nil, 'cmd.exe', pChar(DirCombo), nil, SW_SHOWNORMAL);
      Application.minimize;
    end else begin
      ShowMessage('Select the correct folder for your Sikuli installation folder');
    end;
end;
Run Code Online (Sandbox Code Playgroud)

这非常有效,sikuli脚本运行完美,并且在运行时,cmd线可以看到正在执行的各种动作.sikuli脚本完成后,cmd行自行关闭.因此shell处理程序知道何时关闭正在运行的进程.所以我的问题是:是否有可能告诉delphi:在处理程序关闭进程后,运行下一个进程(Sikuli脚本)?现在我知道我可以在delphi中使用整个createProcess,但它似乎有点矫枉过正.必须有一种方法来更快更容易地做到这一点.有人有线索吗?

delphi winapi

12
推荐指数
2
解决办法
3万
查看次数

标签 统计

delphi ×1

winapi ×1