_spawnl, _wspawnl_spawnl, _wspawnl

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 ulteriori informazioni, vedere funzioni CRT non supportate nelle App Universal Windows Platform.For more information, see CRT functions not supported in Universal Windows Platform apps.

SintassiSyntax

intptr_t _spawnl(  
   int mode,  
   const char *cmdname,  
   const char *arg0,  
   const char *arg1,  
   ... const char *argn,  
   NULL   
);  
intptr_t _wspawnl(  
   int mode,  
   const wchar_t *cmdname,  
   const wchar_t *arg0,  
   const wchar_t *arg1,  
   ... const wchar_t *argn,  
   NULL   
);  

ParametriParameters

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

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

arg0, arg1, ... argn
Elenco dei puntatori agli argomenti.List of pointers to arguments. L'argomento arg0 è solitamente un puntatore a cmdname.The arg0 argument is usually a pointer to cmdname. Gli argomenti da arg1 a argn sono puntatori alle stringhe di caratteri che costituiscono il nuovo elenco di argomenti.The arguments arg1 through argn are pointers to the character strings forming the new argument list. Dopo argn, ci deve essere un puntatore NULL per contrassegnare la fine dell'elenco di argomenti.Following argn, there must be a NULL pointer to mark the end of the argument list.

Valore restituitoReturn Value

Il valore restituito da un _spawnl sincrono o _wspawnl (_P_WAIT specificato per mode) è lo stato di uscita del nuovo processo.The return value from a synchronous _spawnl or _wspawnl (_P_WAIT specified for mode) is the exit status of the new process. Il valore restituito da un _spawnl asincrono o _wspawnl (_P_NOWAIT o _P_NOWAITO specificato per mode) è l'handle del processo.The return value from an asynchronous _spawnl or _wspawnl (_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 routine exit 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. Il valore restituito-1 indica un errore (il nuovo processo non è avviato).A return value of -1 indicates an error (the new process is not started). In questo caso, errno è impostato su uno dei valori indicati di seguito.In this case, errno is set to one of the following values.

E2BIG
L'elenco di argomenti supera i 1024 byte.Argument list exceeds 1024 bytes.

EINVAL
L'argomento mode non è valido.mode argument is invalid.

ENOENT
Il file o il percorso non è stato trovato.File or path is not found.

ENOEXEC
Il file specificato non è eseguibile o il formato del file eseguibile non è valido.Specified file is not executable or has invalid executable-file format.

ENOMEM
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.

Queste funzioni convalidano i relativi parametri.These functions validate their parameters. Se cmdname o arg0 è una stringa vuota o un puntatore Null, viene richiamato il gestore di parametri non validi, come descritto in Parameter Validation.If either cmdname or arg0 is an empty string or a null pointer, the invalid parameter handler is invoked, as described in Parameter Validation. Se l'esecuzione può continuare, queste funzioni impostano errno su 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.

NoteRemarks

Ognuna di queste funzioni crea ed esegue un nuovo processo, passando ogni argomento della riga di comando come parametro separato.Each of these functions creates and executes a new process, passing each command-line argument as a separate parameter.

RequisitiRequirements

RoutineRoutine Intestazione obbligatoriaRequired header
_spawnl <process.h><process.h>
_wspawnl <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 processo e ambiente Process and Environment Control
Funzioni _spawn, _wspawn _spawn, _wspawn Functions
abort abort
atexit atexit
Funzioni _exec, _wexec _exec, _wexec Functions
exit, _Exit, _exit exit, _Exit, _exit
_flushall _flushall
_getmbcp _getmbcp
_onexit, _onexit_m _onexit, _onexit_m
_setmbcp _setmbcp
system, _wsystemsystem, _wsystem