|Important||This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer|
Create and execute a new process.
intptr_t _spawnlpe( int mode, const char *cmdname, const char *arg0, const char *arg1, ... const char *argn, NULL, const char *const *envp ); intptr_t _wspawnlpe( int mode, const wchar_t *cmdname, const wchar_t *arg0, const wchar_t *arg1, ... const wchar_t *argn, NULL, const wchar_t *const *envp );
- Execution mode for calling process
- Path of file to be executed
- arg0, arg1, ... argn
- List of pointers to arguments
- Array of pointers to environment settings
The return value from a synchronous _spawnlpe or _wspawnlpe (_P_WAIT specified for mode) is the exit status of the new process. The return value from an asynchronous _spawnlpe or _wspawnlpe (_P_NOWAIT or _P_NOWAITO specified for mode) is the process handle. The exit status is 0 if the process terminated normally. You can set the exit status to a nonzero value if the spawned process specifically calls the exit routine with a nonzero argument. If the new process did not explicitly set a positive exit status, a positive exit status indicates an abnormal exit with an abort or an interrupt. A return value of –1 indicates an error (the new process is not started). In this case, errno is set to one of the following values:
- Argument list exceeds 1024 bytes
- mode argument is invalid
- File or path is not found
- Specified file is not executable or has invalid executable-file format
- Not enough memory is available to execute new process
See _doserrno, errno, _sys_errlist, and _sys_nerr for more information on these, and other, return codes.
Each of these functions creates 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.
|_spawnlpe||<process.h>||Win 98, Win Me, Win NT, Win 2000, Win XP|
|_wspawnlpe||<stdio.h> or <wchar.h>||Win NT, Win 2000, Win XP|
For additional compatibility information, see Compatibility in the Introduction.
All versions of the C run-time libraries.
See the example in _spawn, _wspawn Functions.
Process and Environment Control Routines | _spawn Functions Overview | abort | atexit | _exec Functions | exit | _flushall | _getmbcp | _onexit | _setmbcp | system | Run-Time Routines and .NET Framework Equivalents