Могу ли я узнать, в чем разница между каждым Exec
, ExecWait
, ExecShell
, nsExec::Exec
,nsExec::ExecToLog,
nsExec::ExecToStack
, ExecDos
и ExecCmd
, например, когда какой использовать?
Я опубликовал различные вызовы выполнения, которые я знаю. Я пытаюсь составить исчерпывающий список, чтобы он помог будущим посетителям..
Exec
:Просто выполнить вызываемую строку, будь то приложение, консоль или файл.
ExecWait
: Выполняется аналогично Exec
, но ожидает завершения процесса.
ExecShell
:Для чего это?
nsExec::Exec
:Так же, как Exec
или ExecWait
, но только для командной строки и без открытия окна консоли. Я не уверен, ждет ли он завершения процесса. Ожидает ли nsExec::Exec
завершения дочернего процесса?
nsExec::ExecToLog
:The documentation says ExecToLog
похож на простой nsExec
, но выводит в окно журнала. Что это значит, что такое окно журнала?
nsExec::ExecToStack
:В документации сказано, что ExecToStack
похож на простой nsExec
, но выводит данные в стек. Я понимаю.
ExecDos
:То же, что nsExec::ExecToStack
, но дополнительно(Разве это не ?)
а. принимает строковый параметр, который служит стандартным вводом для запуска приложения.
б. работает как в синхронном, так и в асинхронном режиме.
в. он работает из раздела -для проверки.onInit.
ExecCmd
:То же, что и ExecDos
, но не требует
ExpandEnvStrings $3 %COMSPEC%
ExecDos::exec /C
части. Я прав?