_spawnve, _wspawnve

Создает и выполняет новый процесс.

Важное примечаниеВажно

Этот API нельзя использовать в приложениях, запускаемых в среде выполнения Windows.Дополнительные сведения см. в разделе Функции CRT не поддерживаются при /ZW.

intptr_t _spawnve(
   int mode,
   const char *cmdname,
   const char *const *argv,
   const char *const *envp 
);
intptr_t _wspawnve(
   int mode,
   const wchar_t *cmdname,
   const wchar_t *const *argv,
   const wchar_t *const *envp 
);

Параметры

  • mode
    Режим выполнения для вызывающего процесса.

  • cmdname
    Путь к файлу, в который будет выполняться.

  • argv
    Массив указателей на аргументами.Аргумент argv[0] обычно указатель на пути в реальном режиме или к названию программы в защищенном режиме и argv[1], argv[n] указатели символьным строкам формируя новый список аргументов.Аргумент argv[n ] +1 должен быть указателем NULL, чтобы отметить конец списка аргументов.

  • envp
    Массив указателей на параметры среды.

Возвращаемое значение

Возвращаемое значение синхронного из _spawnve или _wspawnve (_P_WAIT ), указанного параметром mode нового выхода состояние процесса.Возвращаемое значение в асинхронном _spawnve или _wspawnve (_P_NOWAIT или _P_NOWAITO, определенные для mode) процессу дескриптор.Состояние выхода значение 0, если процесс завершил обычно.Можно задать состояние выхода в ненулевому значению, если порожданный процесс, вызывает процедуру exit с безнулевым аргументом.Если новый процесс явно укажите положительное состояние выхода, положительное состояние передачи показывает анормалный выход с прекращением прерывания или прерыванием.Возвращаемое значение – 1 указывает на ошибку (не запущен новый процесс).В этом случае errno имеет одно из следующих значений.

  • E2BIG
    Список аргументов превышает 1024 байт.

  • EINVAL
    аргумент mode является недопустимым.

  • ENOENT
    Файл или путь не найден.

  • ENOEXEC
    Указанный файл не исполнительн или имеет недопустимый формат исполняемого файла.

  • ENOMEM
    Недостаточно памяти доступен для нового процесса.

Дополнительные сведения об этих и других кодах возврата см. в разделе _doserrno, errno, _sys_errlist и _sys_nerr.

Заметки

Каждая из этих функций создает и выполняет новый процесс, передавая массив указателей на аргументы командной строки и массив указателей на параметры среды.

Эти функции проверяют их параметрами.Если cmdname или argv указатель либо если параметр argv указывает на пустому указателю, или argv[0], является пустой строкой, то вызывается обработчик недопустимого параметра, как описано в разделе Проверка параметров.Если среда выполнения может продолжить, это функциями errno задается значение EINVAL и возвращением -1.Нет новый процесс не порождан.

Требования

Функция

Требуемый заголовок

_spawnve

<stdio.h> или <process.h>

_wspawnve

<stdio.h> или <wchar.h>

Дополнительные сведения о совместимости см. в разделе Совместимость во введении.

Пример

См. пример в разделе _spawn, функции _wspawn.

Эквивалент в .NET Framework

См. также

Ссылки

Процесс и управление среды

_spawn, функции _wspawn

abort

atexit

_exec, функции _wexec

exit, _exit

_flushall

_getmbcp

_onexit, _onexit_m

_setmbcp

system, _wsystem