Export (0) Print
Expand All
div
eof
Expand Minimize
This topic has not yet been rated - Rate this topic

_execl, _wexecl

Loads and executes new child processes.

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

Path of the file to be executed.

arg0, ...argn

List of pointers to the parameters.

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 (one or more of the parameters was a null pointer or empty string).

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.

Each of these functions loads and executes a new process, passing each command-line argument as a separate parameter. The first argument is the command or executable file name, and the second argument should be the same as the first. It becomes argv[0] in the executed process. The third argument is the first argument, argv[1], of the process being executed.

In Visual C++ 2005, the _execl functions validate their parameters. If either 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 executed.

Function

Required header

Optional header

_execl

<process.h>

<errno.h>

_wexecl

<process.h> or <wchar.h>

<errno.h>

For more compatibility information, see Compatibility in the Introduction.

See the example in _exec, _wexec Functions.

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.