Condividi tramite


_spawnle, _wspawnle

Crea ed esegue un nuovo processo.

Nota importanteImportante

Questa API non può essere utilizzata nelle applicazioni che vengono eseguite in Windows Runtime.Per ulteriori informazioni, vedere Funzioni CRT non supportate con /ZW.

intptr_t _spawnle(
   int mode,
   const char *cmdname,
   const char *arg0,
   const char *arg1,
   ... const char *argn,
   NULL,
   const char *const *envp 
);
intptr_t _wspawnle(
   int mode,
   const wchar_t *cmdname,
   const wchar_t *arg0,
   const wchar_t *arg1,
   ... const wchar_t *argn,
   NULL,
   const wchar_t *const *envp 
);

Parametri

  • mode
    Modalità di esecuzione del processo chiamante.

  • cmdname
    Percorso del file da eseguire.

  • arg0, arg1, ... argn
    Elenco dei puntatori agli argomenti.L'argomento di arg0 è in genere un puntatore a cmdname.Gli argomenti arg1 con argn sono puntatori alle stringhe di caratteri che costituiscono il nuovo elenco di argomenti.Attenendosi a argn, deve essere un puntatore di NULL per contrassegnare la fine dell'elenco di argomenti.

  • envp
    Matrice di puntatori alle impostazioni di ambiente.

Valore restituito

Il valore restituito da _spawnle sincrono o da _wspawnle (_P_WAIT specificato per mode) è lo stato di uscita del nuovo processo.Il valore restituito da _spawnle asincrono o da _wspawnle (_P_NOWAIT o _P_NOWAITO specificato per mode) è un handle aprirlo.Lo stato di uscita è 0 se il processo termine generale.È possibile impostare lo stato di uscita un valore diverso da zero se il processo generato in particolare chiama la routine di exit con un argomento diverso da zero.Se il nuovo processo in modo esplicito impostando lo stato di uscita positivo, lo stato di uscita positivo indica l'uscita anomala con un'interruzione o un'interruzione.Restituito un valore pari a 1 indica un errore (il nuovo processo non avviata).In questo caso, errno è impostato su uno dei seguenti valori.

  • E2BIG
    L'elenco di argomenti supera i 1024 byte.

  • EINVAL
    l'argomento dimode non è valido.

  • ENOENT
    Il file o il percorso non viene trovato.

  • ENOEXEC
    Il file specificato non è eseguibile o di formato di file eseguibile non valido.

  • ENOMEM
    Memoria insufficiente è disponibile per eseguire il nuovo processo.

Per ulteriori informazioni su questi e altri codici restituiti, vedere _doserrno, errno, _sys_errlist, e _sys_nerr.

Note

Ognuna di queste funzioni crea ed esegue un nuovo processo, passando ogni argomento della riga di comando come parametro separato e anche passando una matrice di puntatori alle impostazioni di ambiente.

Queste funzioni convalidano i parametri.Se cmdname o arg0 è una stringa vuota o un puntatore null, il gestore non valido di parametro viene richiamato, come descritto in Convalida dei parametri.Se l'esecuzione è consentita per continuare, questo funzioni errno impostato tornare a EINVALe -1.Nessun nuovo processo viene generato.

Requisiti

Routine

Intestazione obbligatoria

_spawnle

<process.h>

_wspawnle

<stdio.h> o <wchar.h>

Per ulteriori informazioni sulla compatibilità, vedere Compatibilità nell'introduzione.

Esempio

Vedere l'esempio in _spawn, funzioni di _wspawn.

Equivalente .NET Framework

Vedere anche

Riferimenti

Processo e controllo ambiente

_spawn, funzioni di _wspawn

abort

atexit

_exec, funzioni di _wexec

exit, _exit

_flushall

_getmbcp

_onexit, _onexit_m

_setmbcp

system, _wsystem