_execvp, _wexecvp
Загружает и выполняет новые дочерние процессы.
Важно!
Этот API невозможно использовать в приложениях, запускаемых в среде выполнения Windows.Дополнительные сведения см. в статье Функции CRT, которые не поддерживаются с ключом /ZW.
intptr_t _execvp(
const char *cmdname,
const char *const *argv
);
intptr_t _wexecvp(
const wchar_t *cmdname,
const wchar_t *const *argv
);
Параметры
cmdname
Путь к файлу для запуска.argv
Массив указателей на параметры.
Возвращаемое значение
Если успешно, эти функции не возвращают вызывающему процессу. Возвращаемое значение –1 означает ошибку, в соответствии с которой устанавливается глобальная переменная errno.
Значение errno |
Описание |
---|---|
E2BIG |
Требуемое место для аргументов и параметров среды превышает 32 КБ. |
EACCES |
Указанный файл имеет блокировку или нарушение совместного использования. |
EINVAL |
Неверный параметр |
EMFILE |
Слишком много открытых файлов (указанный файл должен быть открыт чтобы определить, является ли он исполняемым). |
ENOENT |
Не найден файл или путь. |
ENOEXEC |
Указанный файл не является исполняемым или имеет недопустимый формат исполняемого файла. |
ENOMEM |
Недостаточно памяти для выполнения нового процесса; доступная память была повреждена;существует недопустимый блок, показывающий, что вызывающий процесс не был правильно размещен. |
Дополнительные сведения об этих и других кодах возврата см. в разделе _doserrno, errno, _sys_errlist и _sys_nerr.
Заметки
Каждая из этих функций загружает и выполняет новый процесс, передавая массив указателей на аргументы командной строки и используя переменную среды PATH, чтобы найти файл для выполнения.
Функции _execvp проверяют их параметры. Если cmdname является пустым указателем, или если argv является пустым указателем, указателем на пустой массив, или если массив содержит пустую строку в качестве первого аргумента, то эти функции вызывают обработчик недопустимых параметров, как описано в разделе Проверка параметров. Если продолжение выполнения разрешено, эти функции устанавливают для errno значение EINVAL и возвращают -1. Ни один процесс не запущен.
Требования
Функция |
Обязательный заголовок |
Необязательный заголовок |
---|---|---|
_execvp |
<process.h> |
<errno.h> |
_wexecvp |
<process.h> или <wchar.h> |
<errno.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
Пример
См. пример в Функции _exec, _wexec.