Поделиться через


_spawnvpe, _wspawnvpe

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

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

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

intptr_t _spawnvpe(
   int mode,
   const char *cmdname,
   const char *const *argv,
   const char *const *envp 
);
intptr_t _wspawnvpe(
   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
    Массив указателей на параметры среды

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

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

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

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

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

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

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

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

Заметки

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

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

Требования

Функция

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

_spawnvpe

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

_wspawnvpe

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

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

Пример

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

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

См. также

Ссылки

abort

atexit

_exec, функции _wexec

exit, _exit

_flushall

_getmbcp

_onexit, _onexit_m

_setmbcp

system, _wsystem