_spawnlpe, _wspawnlpe
Создает и выполняет новый процесс.
Важно |
---|
Этот API нельзя использовать в приложениях, выполняемых в Среда выполнения Windows.Дополнительные сведения см. в разделе Функции CRT не поддерживаются при /ZW. |
intptr_t _spawnlpe(
int mode,
const char *cmdname,
const char *arg0,
const char *arg1,
... const char *argn,
NULL,
const char *const *envp
);
intptr_t _wspawnlpe(
int mode,
const wchar_t *cmdname,
const wchar_t *arg0,
const wchar_t *arg1,
... const wchar_t *argn,
NULL,
const wchar_t *const *envp
);
Параметры
mode
Режим выполнения для вызывающего процесса.cmdname
Путь к файлу, в который будет выполняться.arg0, arg1, ... argn
Список указателей на аргументами.Аргумент arg0 обычно указатель на объект cmdname.Аргументы arg1 через argn указатели символьным строкам форма новый список аргументов.После argn, должно быть указатель NULL, чтобы отметить конец списка аргументов.envp
Массив указателей на параметры среды.
Возвращаемое значение
Возвращаемое значение синхронного из _spawnlpe или _wspawnlpe (_P_WAIT ), указанного параметром mode нового выхода состояние процесса.Возвращаемое значение в асинхронном _spawnlpe или _wspawnlpe (_P_NOWAIT или _P_NOWAITO, определенные для mode) процессу дескриптор.Состояние выхода значение 0, если процесс завершил обычно.Можно задать состояние выхода в ненулевому значению, если порожданный процесс, использующий ненулевое аргумент для вызова процедуры exit.Если новый процесс явно укажите положительное состояние выхода, положительное состояние передачи показывает анормалный выход причиненный с прекращением или прерыванием.Возвращаемое значение – 1 указывает на ошибку (не запущен новый процесс).В этом случае errno имеет одно из следующих значений.
E2BIG
Список аргументов превышает 1024 байт.EINVAL
аргумент mode является недопустимым.ENOENT
Файл или путь не найден.ENOEXEC
Указанный файл не исполнительн или имеет недопустимый формат исполняемого файла.ENOMEM
Недостаточно памяти доступен для нового процесса.
Дополнительные сведения об этих и других кодах возврата см. в разделе errno, _doserrno, _sys_errlist и _sys_nerr.
Заметки
Каждая из этих функций создает и выполняет новый процесс, передает каждый аргумент командной строки в виде отдельного параметра и передает массив указателей на параметры среды.Эти функции используют переменную среды PATH чтобы найти файл для выполнения.
Эти функции проверяют их параметрами.Если cmdname или arg0 является пустой строкой или пустой указатель, вызывается обработчик недопустимого параметра, как описано в разделе Проверка параметров.Если среда выполнения может продолжить, это функциями errno задается значение EINVAL и возвращением -1.Нет новый процесс не порождан.
Требования
Функция |
Требуемый заголовок |
---|---|
_spawnlpe |
<process.h> |
_wspawnlpe |
<stdio.h> или <wchar.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
Пример
См. пример в разделе _spawn, функции _wspawn.