_spawnle, _wspawnle
Crea ed esegue un nuovo processo.
Importante |
---|
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.