_spawnve, _wspawnve
Crea y ejecuta un nuevo proceso.
Importante |
---|
Esta API no se puede utilizar en las aplicaciones que se ejecutan en tiempo de ejecución de Windows.Para obtener más información, vea Funciones CRT no compatibles con /ZW. |
intptr_t _spawnve(
int mode,
const char *cmdname,
const char *const *argv,
const char *const *envp
);
intptr_t _wspawnve(
int mode,
const wchar_t *cmdname,
const wchar_t *const *argv,
const wchar_t *const *envp
);
Parámetros
mode
Modo de ejecución para un proceso de llamada.cmdname
Ruta de acceso del archivo que se ejecutará.argv
Matriz de punteros a argumentos.El argumento argv[0] suele ser un puntero a una ruta en modo real o el nombre del programa en modo protegido, y argv[1] con argv[n] es punteros a cadenas de caracteres que forman la nueva lista de argumentos.El argumento argv[n +1] debe ser un puntero de NULL para marcar el final de la lista de argumentos.envp
Matriz de punteros a la configuración del entorno.
Valor devuelto
El valor devuelto de _spawnve sincrónico o de _wspawnve (_P_WAIT especificado para mode) es el estado del nuevo proceso.El valor devuelto de _spawnve asincrónico o de _wspawnve (_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 llama específicamente la rutina de exit con un argumento distinto de cero.Si el nuevo proceso no estableció un estado de salida positivo, un estado de salida positivo indica un resultado anormal con un anulación o una interrupción.Un valor devuelto de – 1 indica un error (el nuevo proceso no se inicia).En este caso, errno se establece en uno de los valores siguientes.
E2BIG
La lista de argumentos supera los 1024 bytes.EINVAL
el argumento de mode no es válido.ENOENT
El archivo o la ruta no se encuentra.ENOEXEC
El archivo especificado no es ejecutable no tiene formato de archivo ejecutable no válido.ENOMEM
Memoria insuficiente está disponible ejecutar el nuevo proceso.
Para obtener más información sobre éstos y otros códigos de retorno, vea _doserrno, errno, _sys_errlist, y _sys_nerr.
Comentarios
Cada una de estas funciones crea y ejecuta un nuevo proceso, pasando una matriz de punteros a los argumentos de línea de comandos y una matriz de punteros a la configuración del entorno.
Estas funciones validan sus parámetros.Si cmdname o argv es un puntero NULL, o si los puntos de argv el puntero null, o argv[0] es una cadena vacía, se invoca el controlador no válido de parámetro, tal y como se describe en Validación de parámetros.Si la ejecución puede continuar, estas funciones errno establecido el volver a EINVAL, y -1.No se generar ningún nuevo proceso.
Requisitos
Rutina |
Encabezado necesario |
---|---|
_spawnve |
<stdio.h> o <process.h> |
_wspawnve |
<stdio.h> o <wchar.h> |
Para obtener más información de compatibilidad, vea Compatibilidad en la Introducción.
Ejemplo
Vea el ejemplo de _spawn, funciones de _wspawn.