_execlp
, _wexeclp
Загружает и выполняет новые дочерние процессы.
Внимание
Этот API нельзя использовать в приложениях, выполняемых в среде выполнения Windows. Дополнительные сведения: Функции CRT, которые не поддерживаются в приложениях универсальной платформы Windows.
Синтаксис
intptr_t _execlp(
const char *cmdname,
const char *arg0,
... const char *argn,
NULL
);
intptr_t _wexeclp(
const wchar_t *cmdname,
const wchar_t *arg0,
... const wchar_t *argn,
NULL
);
Параметры
cmdname
Путь к выполняемому файлу.
arg0
, ... argN
Список указателей на параметры.
Возвращаемое значение
В случае успешного выполнения эти функции не возвращаются в вызывающий процесс. Возвращаемое значение -1 указывает на ошибку, в котором errno
задана глобальная переменная.
Значение errno |
Description |
---|---|
E2BIG |
Пространство, требуемое для аргументов и параметров среды, превышает 32 КБ. |
EACCES |
Указанный файл имеет нарушение блокировки или общего доступа. |
EINVAL |
Недопустимый параметр . |
EMFILE |
Слишком много открытых файлов (указанный файл должен быть открыт, чтобы определить, является ли он исполняемым файлом). |
ENOENT |
Файл или путь не найдены. |
ENOEXEC |
Указанный файл не является исполняемым или имеет недопустимый формат исполняемого файла. |
ENOMEM |
Недостаточно памяти доступно для выполнения нового процесса; доступная память повреждена; или недопустимый блок, указывающий, что вызывающий процесс не был выделен должным образом. |
Дополнительные сведения об этих и других кодах возврата см. в разделе errno
, _doserrno
и _sys_nerr
_sys_errlist
.
Замечания
Каждая из этих функций загружает и выполняет новый процесс и передает каждый аргумент командной строки как отдельный параметр, а также использует переменную среды PATH
для поиска выполняемого файла.
Эти функции _execlp
проверяют свои параметры. Если cmdname
или arg0
является пустым указателем или пустой строкой, эти функции вызывают обработчик недопустимых параметров, как описано в разделе проверки параметров. Если продолжение выполнения разрешено, эти функции устанавливают для errno
значение EINVAL
и возвращают -1. Ни один новый процесс не запущен.
Требования
Function | Обязательный заголовок | Необязательный заголовок |
---|---|---|
_execlp |
<process.h> | <errno.h> |
_wexeclp |
<process.h> или <wchar.h> | <errno.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
Пример
См. пример в _exec
функциях. _wexec
См. также
Управление процессами и средой
_exec
, _wexec
функции
abort
atexit
exit
, , _Exit
_exit
_onexit
, _onexit_m
_spawn
, _wspawn
функции
system
, _wsystem