我能知道什么是每个Exec
,ExecWait
,ExecShell
,nsExec::Exec
,nsExec::ExecToLog,
nsExec::ExecToStack
,ExecDos
和ExecCmd
之间的差异,在何时使用哪个?Exec的VS ExecWait VS ExecShell VS nsExec :: Exec的VS nsExec :: ExecToLog VS nsExec :: ExecToStack VS ExecDos VS ExeCmd
我发布了我知道的各种执行调用。我试图做一个全面的列表,因此,它有助于未来的游客..
Exec
:说白了执行所谓的字符串,是它的一些应用程序,控制台或文件。ExecWait
:执行像Exec
,但等待直到过程退出。ExecShell
:这是什么?nsExec::Exec
:就像Exec
或ExecWait
但仅限于命令提示符,太不打开控制台窗口。我不确定它是否等待流程退出。nsExec::Exec
等待子进程退出吗?nsExec::ExecToLog
:The documentation says ExecToLog
类似于普通nsExec
但它输出到记录窗口。 这是什么意思,什么是日志窗口?nsExec::ExecToStack
:文档说ExecToStack
类似于普通nsExec
但它推动输出到叠加。我明白了。ExecDos
:同nsExec::ExecToStack
但另外一个(这不是?)。采用字符串参数作为运行应用程序的标准输入。
b。在同步/异步模式下工作。
c。它不适用于.onInit签出。
ExecCmd
:同ExecDos
但它并不需要这些ExpandEnvStrings $3 %COMSPEC% ExecDos::exec /C
部分。 我正确吗?
对于需要杀死子进程的用户,如果需要花费很长时间才能完成,您可能还会包含[Timeout :: ExecTimeout](http://nsis.sourceforge.net/ExecTimeout_plug-in)。 – 2013-10-24 17:28:00
@FranciscoR随意编辑问题并添加它(连同其目的)。我对你提到的那个不太了解。 – nawfal 2013-10-24 18:06:43
实际上,每个命令应该做什么的解释都属于答案,而不是问题本身。 “我对么?” =糟糕的StackOverflow问题。我试图将这些小部分移到答案上,但已经有一个答案,即移动会失效。 – 2014-05-07 00:09:04