_spawnv, _wspawnv_spawnv, _wspawnv

Crea ed esegue un nuovo processo.Creates and executes a new process.

Importante

Non è possibile usare questa API nelle applicazioni eseguite in Windows Runtime.This API cannot be used in applications that execute in the Windows Runtime. Per altre informazioni, vedere Funzioni CRT non supportate nelle app della piattaforma UWP (Universal Windows Platform).For more information, see CRT functions not supported in Universal Windows Platform apps.

SintassiSyntax

intptr_t _spawnv(
   int mode,
   const char *cmdname,
   const char *const *argv
);
intptr_t _wspawnv(
   int mode,
   const wchar_t *cmdname,
   const wchar_t *const *argv
);

ParametriParameters

modemode
Modalità di esecuzione del processo chiamante.Execution mode for the calling process.

CmdNamecmdname
Percorso del file da eseguire.Path of the file to be executed.

argvargv
Matrice di puntatori agli argomenti.Array of pointers to arguments. L'argomento argv[0] è in genere un puntatore a un percorso in modalità reale o al nome del programma in modalità protetta, e argv[1] tramite argv[n] sono puntatori alle stringhe di caratteri che costituiscono il nuovo elenco di argomenti.The argument argv[0] is usually a pointer to a path in real mode or to the program name in protected mode, and argv[1] through argv[n] are pointers to the character strings forming the new argument list. L'argomento argv[n + 1] deve essere un NULL puntatore per contrassegnare la fine dell'elenco di argomenti.The argument argv[n +1] must be a NULL pointer to mark the end of the argument list.

Valore restituitoReturn Value

Il valore restituito da un oggetto sincrono spawnv oppure wspawnv (P_WAIT specificata per modalità) è lo stato di uscita del nuovo processo.The return value from a synchronous _spawnv or _wspawnv (_P_WAIT specified for mode) is the exit status of the new process. Il valore restituito da un'asincrona spawnv oppure wspawnv (P_NOWAIT oppure P_NOWAITO specificato per modalità ) è l'handle del processo.The return value from an asynchronous _spawnv or _wspawnv (_P_NOWAIT or _P_NOWAITO specified for mode) is the process handle. Lo stato di uscita è 0 se il processo è terminato normalmente.The exit status is 0 if the process terminated normally. È possibile impostare lo stato di uscita su un valore diverso da zero se il processo generato chiama specificatamente la uscire routine con un argomento diverso da zero.You can set the exit status to a nonzero value if the spawned process specifically calls the exit routine with a nonzero argument. Se il nuovo processo non ha impostato in modo esplicito uno stato di uscita positivo, uno stato di uscita positivo indica l'uscita anomala con interruzione.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. Valore restituito di -1 indica un errore (non viene avviato il nuovo processo).A return value of -1 indicates an error (the new process is not started). In questo caso errno è impostato su uno dei valori seguenti.In this case, errno is set to one of the following values.

E2BIGE2BIG L'elenco di argomenti supera i 1024 byte.Argument list exceeds 1024 bytes.
EINVALEINVAL modalità argomento non è valido.mode argument is invalid.
ENOENTENOENT Il file o il percorso non è stato trovato.File or path is not found.
ENOEXECENOEXEC Il file specificato non è eseguibile o il formato del file eseguibile non è valido.Specified file is not executable or has invalid executable-file format.
ENOMEMENOMEM Memoria insufficiente per eseguire il nuovo processo.Not enough memory is available to execute the new process.

Per altre informazioni su questi e altri codici restituiti, vedere _doserrno, errno, _sys_errlist, and _sys_nerr.For more information about these and other return codes, see _doserrno, errno, _sys_errlist, and _sys_nerr.

NoteRemarks

Ognuna di queste funzioni crea ed esegue un nuovo processo, passando una matrice di puntatori agli argomenti della riga di comando.Each of these functions creates and executes a new process, passing an array of pointers to command-line arguments.

Queste funzioni convalidano i relativi parametri.These functions validate their parameters. Se uno dei due cmdname oppure argv è un puntatore null, o se argv punta a un puntatore null oppure argv[0] è una stringa vuota, non valido viene richiamato il gestore di parametro, come descritto in convalida dei parametri.If either cmdname or argv is a null pointer, or if argv points to null pointer, or argv[0] is an empty string, the invalid parameter handler is invoked, as described in Parameter Validation. Se l'esecuzione può continuare, queste funzioni impostano errno al EINVALe restituiscono -1.If execution is allowed to continue, these functions set errno to EINVAL, and return -1. Nessun nuovo processo viene generato.No new process is spawned.

RequisitiRequirements

RoutineRoutine Intestazione obbligatoriaRequired header
_spawnv_spawnv <stdio.h> o <process.h><stdio.h> or <process.h>
_wspawnv_wspawnv <stdio.h> o <wchar.h><stdio.h> or <wchar.h>

Per altre informazioni sulla compatibilità, vedere Compatibilità.For more compatibility information, see Compatibility.

EsempioExample

Vedere l'esempio in Funzioni _spawn, _wspawn.See the example in _spawn, _wspawn Functions.

Vedere ancheSee also

Controllo di processi e ambienteProcess and Environment Control
Funzioni _spawn, _wspawn_spawn, _wspawn Functions
abortabort
atexitatexit
Funzioni _exec, _wexec_exec, _wexec Functions
exit, _Exit, _exitexit, _Exit, _exit
_flushall_flushall
_getmbcp_getmbcp
_onexit, _onexit_m_onexit, _onexit_m
_setmbcp_setmbcp
system, _wsystemsystem, _wsystem