_execle, _wexecle
Loads and executes new child processes.
intptr_t _execle(
const char *cmdname,
const char *arg0,
... const char *argn,
NULL,
const char *const *envp
);
intptr_t _wexecle(
const wchar_t *cmdname,
const wchar_t *arg0,
... const wchar_t *argn,
NULL,
const char *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 is 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 passing an array of pointers to environment settings.
In Visual C++ 2005, the _execle functions validate their parameters. If cmdname or arg0 is a null pointer 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 |
---|---|---|
_execle |
<process.h> |
<errno.h> |
_wexecle |
<process.h> or <wchar.h> |
<errno.h> |
For more compatibility information, see Compatibility in the Introduction.
Example
See the example in _exec, _wexec Functions.