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


_execl, _wexecl

Загружает и выполняет новые дочерние процессы.

Внимание

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

Синтаксис

intptr_t _execl(
   const char *cmdname,
   const char *arg0,
   ... const char *argn,
   NULL
);
intptr_t _wexecl(
   const wchar_t *cmdname,
   const wchar_t *arg0,
   ... const wchar_t *argn,
   NULL
);

Параметры

cmdname
Путь к выполняемому файлу.

arg0, ... argN
Список указателей на параметры.

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

В случае успешного выполнения эти функции не возвращаются в вызывающий процесс. Возвращаемое значение -1 указывает на ошибку, в котором errno задана глобальная переменная.

Значение errno Description
E2BIG Пространство, требуемое для аргументов и параметров среды, превышает 32 КБ.
EACCES Указанный файл имеет нарушение блокировки или общего доступа.
EINVAL Недопустимый параметр (один или несколько параметров представляли собой указатель null или пустую строку).
EMFILE Слишком много открытых файлов (указанный файл должен быть открыт, чтобы определить, является ли он исполняемым файлом).
ENOENT Файл или путь не найден.
ENOEXEC Указанный файл не является исполняемым или имеет недопустимый формат исполняемого файла.
ENOMEM Недостаточно памяти доступно для выполнения нового процесса; доступная память повреждена; или недопустимый блок, указывающий, что вызывающий процесс не был выделен должным образом.

Замечания

Каждая из этих функций загружает и выполняет новый процесс, передавая все аргументы командной строки как отдельные параметры. Первым аргументом является имя команды или исполняемого файла, а второй должен быть таким же, как первый. В процессе запуска он становится argv[0]. Третий аргумент — это первый аргумент, argv[1], выполняемого процесса.

Эти функции _execl проверяют свои параметры. Если или cmdname arg0 имеет значение NULL или пустая строка, эти функции вызывают обработчик недопустимых параметров, как описано в разделе "Проверка параметров", если выполнение разрешено продолжать, эти функции errno задаются и EINVAL возвращают значение -1. Новые процессы не выполняются.

Требования

Function Обязательный заголовок Необязательный заголовок
_execl <process.h> <errno.h>
_wexecl <process.h> или <wchar.h> <errno.h>

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

Пример

См. пример в _execфункциях. _wexec

См. также

Управление процессами и средой
_exec, _wexec функции
abort
atexit
exit, , _Exit_exit
_onexit, _onexit_m
_spawn, _wspawn функции
system, _wsystem