Partager via


_execve, _wexecve

Charge et exécute les nouveaux processus enfant.

Important

Cette API ne peut pas être utilisée dans les applications qui s’exécutent dans le Windows Runtime. Pour plus d’informations, consultez Fonctions CRT non prises en charge dans les applications de la plateforme Windows universelle.

Syntaxe

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
);

Paramètres

cmdname
Chemin d’accès du fichier à exécuter.

argv
Tableau de pointeurs vers les paramètres.

envp
Tableau de pointeurs vers les paramètres d'environnement.

Valeur retournée

Si elle réussit, ces fonctions ne reviennent pas au processus appelant. Une valeur de retour de -1 indique une erreur, auquel cas la errno variable globale est définie.

Valeur errno Description
E2BIG L’espace requis pour les arguments et les paramètres d’environnement dépasse 32 Ko.
EACCES Le fichier spécifié possède un verrou ou une violation de partage.
EINVAL Paramètre non valide.
EMFILE Trop de fichiers ouverts (le fichier spécifié doit être ouvert pour déterminer s’il s’agit d’un fichier exécutable).
ENOENT Fichier ou chemin d’accès introuvable.
ENOEXEC Le fichier spécifié n’est pas exécutable ou a un format de fichier exécutable non valide.
ENOMEM La mémoire insuffisante est disponible pour exécuter le nouveau processus ; la mémoire disponible a été endommagée ; ou un bloc non valide existe, indiquant que le processus appelant n’a pas été alloué correctement.

Pour plus d’informations sur ces codes de retour et d’autres codes de retour, consultez , , _sys_errlist_doserrnoet _sys_nerr.errno

Notes

Chacune de ces fonctions charge et exécute un nouveau processus, passant un tableau de pointeurs à des arguments de ligne de commande et un tableau de pointeurs aux paramètres d’environnement.

_execve et _wexecve valident leurs paramètres. Ces fonctions appellent le gestionnaire de paramètres non valide, comme décrit dans la validation des paramètres, lorsque :

  • cmdname est un pointeur Null,
  • argv est un pointeur Null ou un pointeur vers un tableau vide,
  • le tableau contient une chaîne vide comme premier argument.

Si l’exécution est autorisée à continuer par le gestionnaire, ces fonctions sont définies errno EINVALsur et retournent -1. Aucun processus lancé.

Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.

Spécifications

Fonction En-tête requis En-tête facultatif
_execve <process.h> <errno.h>
_wexecve <process.h> ou <wchar.h> <errno.h>

Pour plus d’informations sur la compatibilité, consultez Compatibility.

Exemple

Consultez l’exemple dans _exec, _wexec fonctions.

Voir aussi

Processus et contrôle d’environnement
_exec, fonctions _wexec
abort
atexit
exit, , _Exit_exit
_onexit, _onexit_m
_spawn, fonctions _wspawn
system, _wsystem