_spawnvp, _wspawnvp

Crée un processus et l'exécute.

Important

Cette API ne peut pas être utilisée dans les applications qui s'exécutent dans Windows Runtime.Pour plus d'informations, consultez Fonctions CRT non prises en charge avec /ZW.

intptr_t _spawnvp(
   int mode,
   const char *cmdname,
   const char *const *argv 
);
intptr_t _wspawnvp(
   int mode,
   const wchar_t *cmdname,
   const wchar_t *const *argv 
);

Paramètres

  • mode
    Mode d'exécution pour appeler le processus.

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

  • argv
    Tableau de pointeurs vers des arguments.L'argument argv[0] est généralement un pointeur vers un chemin en mode réel ou le nom du programme en mode protégé, et argv[1] par argv[n] sont des pointeurs vers des chaînes de caractères qui forment la nouvelle liste d'arguments.L'argument argv[n +1] doit être un pointeur d' NULL pour marquer la fin de la liste d'arguments.

Valeur de retour

La valeur de retour d' _spawnvp synchrone ou d' _wspawnvp (_P_WAIT spécifié pour mode) est l'état de sortie du nouveau processus.La valeur de retour d' _spawnvp asynchrone ou d' _wspawnvp (_P_NOWAIT ou _P_NOWAITO spécifié pour mode) est le handle de processus.L'état de sortie est 0 si le processus s'terminait normalement.Vous pouvez définir l'état de sortie à une valeur différente de zéro si le processus engendré utilise spécifiquement un argument différent de zéro pour appeler la routine d' exit .Si le nouveau processus ne plaçait pas explicitement un rapport de sortie positif, un rapport de sortie positif indique une sortie anormale avec un arrêt ou une interruption.Une valeur de retour à 1 indique une erreur (le nouveau processus n'est pas lancé).Dans ce cas, errno a une des valeurs suivantes :

  • E2BIG
    La liste d'arguments dépasse 1024 octets.

  • EINVAL
    l'argument d'mode est incorrect.

  • ENOENT
    Le fichier ou le chemin d'accès est introuvable.

  • ENOEXEC
    Le fichier spécifié n'est pas exécutable ou a le format de fichier exécutable non valide.

  • ENOMEM
    Mémoire insuffisante est disponible pour exécuter le nouveau processus.

Pour plus d'informations sur ces éléments, et autres, les codes de retour, consultez errno, _doserrno, _sys_errlist, et _sys_nerr.

Notes

Chacune de ces fonctions crée un processus et l'exécute, et passe un tableau de pointeurs vers des arguments de ligne de commande et utilise la variable d'environnement d' PATH pour rechercher le fichier à exécuter.

Ces fonctions valident leurs paramètres.Si cmdname ou argv est un pointeur null, ou si les points d' argv au pointeur null, ou l' argv[0] est une chaîne vide, le gestionnaire de paramètre non valide est appelé, comme décrit dans Validation des paramètres.Si est autorisé à l'exécution pour continuer, ces fonctions par errno définir le retour à EINVAL, et -1.Aucun nouveau processus n'a engendré.

Configuration requise

Routine

En-tête requis

_spawnvp

<stdio.h> ou <process.h>

_wspawnvp

<stdio.h> ou <wchar.h>

Pour des informations de compatibilité supplémentaires, consultez Compatibilité.

Exemple

Consultez l'exemple dans _spawn, fonctions de _wspawn.

Équivalent .NET Framework

Voir aussi

Référence

Processus et contrôle ambiance

_spawn, fonctions de _wspawn

abort

atexit

_exec, fonctions de _wexec

exit, _exit

_flushall

_getmbcp

_onexit, _onexit_m

_setmbcp

system, _wsystem