Могу ли я узнать, в чем различия между каждыми 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
, но дополнительно ( Не?)а. принимает параметр string, который служит в качестве stdin для запуска приложения.
б. работает в режиме sync/async.
с. он работает вне раздела - для проверки .onInit.
-
ExecCmd
: То же, что иExecDos
, но это не требует этихExpandEnvStrings $3 %COMSPEC% ExecDos::exec /C
части. Правильно ли я?