This documentation is archived and is not being maintained.

_spawnvpe, _wspawnvpe

Create and execute a new process.

intptr_t _spawnvpe(
   int mode,
   const char *cmdname,
   const char *const *argv,
   const char *const *envp 
intptr_t _wspawnvpe(
   int mode,
   const wchar_t *cmdname,
   const wchar_t *const *argv,
   const wchar_t *const *envp 


Execution mode for calling process
Path of file to be executed
Array of pointers to arguments
Array of pointers to environment settings

Return Value

The return value from a synchronous _spawnvpe or _wspawnvpe (_P_WAIT specified for mode) is the exit status of the new process. The return value from an asynchronous _spawnvpe or _wspawnvpe (_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 an array of pointers to command-line arguments and an array of pointers to environment settings. These functions use the PATH environment variable to find the file to execute.


Routine Required header Compatibility
_spawnvpe <stdio.h> or <process.h> Win 98, Win Me, Win NT, Win 2000, Win XP
_wspawnvpe <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.

See Also

abort | atexit | _exec Functions | exit | _flushall | _getmbcp | _onexit | _setmbcp | system | Run-Time Routines and .NET Framework Equivalents