_execv, _wexecv
Collapse the table of content
Expand the table of content
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

_execv, _wexecv 

Loads and executes new child processes.

intptr_t _execv( 
   const char *cmdname,
   const char *const *argv 
intptr_t _wexecv( 
   const wchar_t *cmdname,
   const wchar_t *const *argv 



Path of the file to execute.


Array of pointers to 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


The space required for the arguments and environment settings exceeds 32 KB.


The specified file has a locking or sharing violation.


Invalid parameter.


Too many files open (the specified file must be opened to determine whether it is executable).


The file or path not found.


The specified file is not executable or has an invalid executable-file format.


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.

Each of these functions loads and executes a new process, passing an array of pointers to command-line arguments.

In Visual C++ 2005, the _execv functions validate their parameters. If cmdname is a null pointer, or if argv is a null pointer, pointer to an empty array, or if the array contains an empty string as the first argument, the _execv 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 process is launched.

Function Required header Optional header Compatibility




Windows 95, Windows 98, Windows 98 Second Edition, Windows Millennium Edition, Windows NT 4.0, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003


<process.h> or <wchar.h>


Windows NT 4.0, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003

For more compatibility information, see Compatibility in the Introduction.

See the example in _exec, _wexec Functions.

© 2015 Microsoft