nsExec::ExecToStack 是否正在等待进程完成?(NSIS)

Does nsExec::ExecToStack is waiting the process to finish?(NSIS)

我正在尝试在无交互的静默模式下使用 NSIS 安装程序安装 VC_redist.x64_v14.27.29016.0.exe。 这是代码:

nsExec::ExecToStack 'VC_redist.x64_v14.27.29016.0.exe /install /quiet /norestart'
    pop [=11=]
    pop   

我正在使用 ExecToStack 来获取退出代码。

我的问题是: 我可以确定 nsExec::ExecToStack 等到进程退出然后 returns 退出代码吗? ExecWaitnsExec::ExecToStack 有区别吗??

我想知道 vcredist 可执行文件是否安装成功,然后再继续我的其余安装。

是的,nsExec plug-in 将等待子进程。但是,它不会等待比其父进程寿命更长的孙子进程。

nsExec 是为控制台应用程序设计的,你应该只使用 ExecWait.

ExecWait '"$temp\redist.exe" /something /whatever' [=10=]
DetailPrint "Exit code is [=10=]"