Могу ли я узнать, в чем различия между каждыми 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части. Правильно ли я?