_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