_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 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 _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

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.

arg0, arg1,... argnarg0, arg1, ... argn
Elenco dei puntatori agli argomenti.List of pointers to arguments. Il arg0 argomento è in genere un puntatore a cmdname.The arg0 argument is usually a pointer to cmdname. Gli argomenti arg1 attraverso 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. Seguendo argn, deve essere presente un NULL puntatore 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 oggetto sincrono spawnl oppure wspawnl (P_WAIT specificata per modalità) è 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'asincrona spawnl oppure wspawnl (P_NOWAIT oppure P_NOWAITO specificato per modalità ) è 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 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.

Queste funzioni convalidano i relativi parametri.These functions validate their parameters. Se uno dei due cmdname oppure arg0 è una stringa vuota o un puntatore null, il gestore di parametri non validi viene richiamato, come descritto in convalida dei parametri.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 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.

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_spawnl <process.h><process.h>
_wspawnl_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 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