Condividi tramite


_execve, _wexecve

Carica ed esegue nuovi processi figlio.

Importante

Non è possibile usare questa API nelle applicazioni eseguite in Windows Runtime. Per altre informazioni, vedere Funzioni CRT non supportate nelle app della piattaforma UWP (Universal Windows Platform).

Sintassi

intptr_t _execve(
   const char *cmdname,
   const char *const *argv,
   const char *const *envp
);
intptr_t _wexecve(
   const wchar_t *cmdname,
   const wchar_t *const *argv,
   const wchar_t *const *envp
);

Parametri

cmdname
Percorso del file da eseguire.

argv
Matrice di puntatori ai parametri.

envp
Matrice di puntatori alle impostazioni d'ambiente.

Valore restituito

In caso di esito positivo, queste funzioni non tornano al processo chiamante. Il valore restituito -1 indica un errore, nel qual caso viene impostata la errno variabile globale.

Valore errno Descrizione
E2BIG Lo spazio necessario per gli argomenti e le impostazioni di ambiente supera 32 KB.
EACCES Il file specificato dispone di una violazione di blocco o di condivisione.
EINVAL Parametro non valido.
EMFILE Troppi file aperti (il file specificato deve essere aperto per determinare se è eseguibile).
ENOENT File o percorso non trovato.
ENOEXEC Il file specificato non è eseguibile o ha un formato di file eseguibile non valido.
ENOMEM Memoria insufficiente per eseguire il nuovo processo; la memoria disponibile è stata danneggiata; o esiste un blocco non valido, a indicare che il processo chiamante non è stato allocato correttamente.

Per altre informazioni su questi e altri codici restituiti, vedere errno, _doserrno, _sys_errliste _sys_nerr.

Osservazioni:

Ognuna di queste funzioni carica ed esegue un nuovo processo, passando una matrice di puntatori agli argomenti della riga di comando e una matrice di puntatori alle impostazioni di ambiente.

_execve e _wexecve convalidano i propri parametri. Queste funzioni richiamano il gestore di parametri non validi, come descritto in Convalida dei parametri, quando:

  • cmdname è un puntatore Null,
  • argv è un puntatore Null o un puntatore a una matrice vuota,
  • la matrice contiene una stringa vuota come primo argomento.

Se l'esecuzione può continuare dal gestore, queste funzioni sono impostate su errno EINVALe restituiscono -1. Nessun processo viene avviato.

Per impostazione predefinita, lo stato globale di questa funzione è limitato all'applicazione. Per modificare questo comportamento, vedere Stato globale in CRT.

Requisiti

Funzione Intestazione obbligatoria Intestazione facoltativa
_execve <process.h> <errno.h>
_wexecve <process.h> o <wchar.h> <errno.h>

Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).

Esempio

Vedere l'esempio in _execfunzioni_wexec .

Vedi anche

Processo e controllo dell'ambiente
_exec, _wexec funzioni
abort
atexit
exit, _Exit, _exit
_onexit, _onexit_m
_spawn, _wspawn funzioni
system, _wsystem