_spawnlpe, _wspawnlpe

 

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte Documentación de Visual Studio 2017 RC.

Crea y ejecuta un nuevo proceso.

System_CAPS_ICON_important.jpg Importante

Esta API no se puede usar en aplicaciones que se ejecutan en Windows en tiempo de ejecución. Para más información, vea Funciones de CRT no admitidas con /ZW.

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

Parámetros

mode
Modo de ejecución para el proceso de llamada.

cmdname
Ruta de acceso del archivo que se va a ejecutar.

arg0, arg1, ... argn
Lista de punteros a argumentos. El argumento arg0 suele ser un puntero a cmdname. Los argumentos arg1 a argn son punteros a las cadenas de caracteres que forman la nueva lista de argumentos. Después de argn, debe haber un puntero NULL para marcar el final de la lista de argumentos.

envp
Matriz de punteros a la configuración del entorno.

El valor devuelto de un _spawnlpe o _wspawnlpe sincrónico (_P_WAIT especificado para mode) es el estado de salida del nuevo proceso. El valor devuelto de un _spawnlpe o _wspawnlpe asincrónico (_P_NOWAIT o _P_NOWAITO especificado para mode) es el identificador de proceso. El estado de salida es 0 si el proceso finalizó normalmente. Puede establecer el estado de salida en un valor distinto de cero si el proceso generado usa específicamente un argumento distinto de cero para llamar a la rutina exit. Si el nuevo proceso no estableció explícitamente un estado de salida positivo, un estado de salida positivo indica un resultado anormal causado por una anulación o una interrupción. Un valor devuelto de –1 indica un error (el nuevo proceso no se ha iniciado). En este caso, errno se establece en uno de los valores siguientes.

E2BIG
La lista de argumentos supera los 1024 bytes.

EINVAL
El argumento mode no es válido.

ENOENT
El archivo o la ruta de acceso no se encuentra.

ENOEXEC
El archivo especificado no es ejecutable o tiene un formato de archivo ejecutable no válido.

ENOMEM
Memoria insuficiente para ejecutar el nuevo proceso.

Para obtener más información sobre estos y otros códigos de retorno, vea errno, _doserrno, _sys_errlist y _sys_nerr.

Cada una de estas funciones crea y ejecuta un proceso nuevo, pasa cada argumento de la línea de comandos como parámetro independiente y pasa una matriz de punteros a la configuración del entorno. Estas funciones usan la variable de entorno PATH para buscar el archivo que se va a ejecutar.

Estas funciones validan sus parámetros. Si cmdname o arg0 is an empty string o a null pointer, the invalid parameter handler is invoked, as described in Parameter Validation. Si la ejecución puede continuar, estas funciones establecen errno en EINVALy devuelven -1. No se genera ningún proceso nuevo.

RutinaEncabezado necesario
_spawnlpe<process.h>
_wspawnlpe<stdio.h> o <wchar.h>

Para obtener más información sobre compatibilidad, vea Compatibility.

Vea el ejemplo de Funciones _spawn y _wspawn.

Control de proceso y entorno
_spawn, _wspawn (funciones)
anular
atexit
_exec, _wexec (funciones)
salir, _Exit, _exit
_flushall
_getmbcp
_onexit, _onexit_m
_setmbcp
sistema, _wsystem

Mostrar: