_execlpe, _wexeclpe

 

The latest version of this topic can be found at _execlpe, _wexeclpe.

Loads and executes new child processes.

Important

This API cannot be used in applications that execute in the Windows Runtime. For more information, see CRT functions not supported with /ZW.

Syntax

intptr_t _execlpe(   
   const char *cmdname,  
   const char *arg0,  
   ... const char *argn,  
   NULL,  
   const char *const *envp   
);  
intptr_t _wexeclpe(   
   const wchar_t *cmdname,  
   const wchar_t *arg0,  
   ... const wchar_t *argn,  
   NULL,  
   const wchar_t *const *envp   
);  

Parameters

cmdname
Path of the file to execute.

arg0, ...``argn
List of pointers to parameters.

envp
Array of pointers to environment settings.

Return Value

If successful, these functions do not return to the calling process. A return value of –1 indicates an error, in which case the errno global variable is set.

errno value Description
E2BIG The space required for the arguments and environment settings exceeds 32 KB.
EACCES The specified file has a locking or sharing violation.
EINVAL Invalid parameter.
EMFILE Too many files open (the specified file must be opened to determine whether it is executable).
ENOENT The file or path not found.
ENOEXEC The specified file is not executable or has an invalid executable-file format.
ENOMEM Not enough memory is available to execute the new process; the available memory has been corrupted; or an invalid block exists, indicating that the calling process was not allocated properly.

For more information about these and other return codes, see _doserrno, errno, _sys_errlist, and _sys_nerr.

Remarks

Each of these functions loads and executes a new process, passing each command-line argument as a separate parameter and also passing an array of pointers to environment settings. These functions use the PATH environment variable to find the file to execute.

The _execlpe functions validate their parameters. If either cmdname or arg0 is a null pointers or empty string, these functions invoke the invalid parameter handler as described in Parameter Validation. If execution is allowed to continue, these functions set errno to EINVAL and return -1. No new process is launched.

Requirements

Function Required header Optional header
_execlpe <process.h> <errno.h>
_wexeclpe <process.h> or <wchar.h> <errno.h>

For more compatibility information, see Compatibility.

Example

See the example in _exec, _wexec Functions.

.NET Framework Equivalent

See Also

Process and Environment Control
_exec, _wexec Functions
abort
atexit
exit, _Exit, _exit
_onexit, _onexit_m
_spawn, _wspawn Functions
system, _wsystem