_spawnv, _wspawnv
Cria e executa um novo processo.
Importante |
---|
Este API não pode ser usado em aplicativos executados em Tempo de Execução do Windows.Para obter mais informações, consulte Funções de CRT não suportadas com /ZW. |
intptr_t _spawnv( int mode, const char *cmdname, const char *const *argv ); intptr_t _wspawnv( int mode, const wchar_t *cmdname, const wchar_t *const *argv );
Parâmetros
mode
Modo de execução do processo de chamada.cmdname
Caminho do arquivo a ser executado.argv
Matriz de ponteiros para argumentos.O argumento argv0 é geralmente [] um ponteiro para um caminho no modo ou o nome real de programa em modo protegido, e argv1 com argv[] []né ponteiros para cadeias de caracteres que formam a nova lista de argumentos.O argumento argv[]n + deve ser um ponteiro de NULL para marcar o fim da lista de argumentos.
Valor de retorno
O valor de retorno de _spawnv síncrono ou _wspawnv (_P_WAIT especificado para mode) é o status de saída do novo processo.O valor de retorno de _spawnv assíncrono ou de _wspawnv (_P_NOWAIT ou _P_NOWAITO especificado para mode) é o identificador do processo.O status de saída é 0 se o processo finalizou normalmente.Você pode definir o status de saída para um valor diferente de zero se o processo desovado chama especificamente a rotina de exit com um argumento diferente de zero.Se o novo processo não definiu explicitamente um status de saída positivo, um status de saída positivo indica uma saída anormal com um abort uma ou interrupção.Um valor de retorno de – 1 indica um erro (o novo processo não é iniciado.)Nesse caso, errno é definida como um dos seguintes valores.
E2BIG
A lista de argumento excede 1024 bytes.EINVAL
o argumento demode é inválido.ENOENT
Arquivo ou o caminho não são encontrados.ENOEXEC
O arquivo especificado não é executável ou tem o formato de arquivo executável inválido.ENOMEM
Não está disponível memória suficiente para executar o novo processo.
Para obter mais informações sobre esses e outros códigos de retorno, consulte _doserrno, errno, _sys_errlist, e _sys_nerr.
Comentários
Cada uma dessas funções cria e executa um novo processo, passando uma matriz de ponteiros para argumentos de linha de comando.
Essas funções validam seus parâmetros.Se cmdname ou argv são um ponteiro zero, ou se os pontos de argv ao ponteiro zero, ou argv[0] é uma cadeia de caracteres vazia, o manipulador inválido do parâmetro é invocado, como descrito em Validação de parâmetro.Se a execução é permitida continuar, este funções errno definido retorno a EINVAL, e -1.Nenhum novo processo é desovado.
Requisitos
Rotina |
Cabeçalho necessário |
---|---|
_spawnv |
<stdio.h> ou <process.h> |
_wspawnv |
<stdio.h> ou <wchar.h> |
Para mais informações, consulte Compatibilidade de compatibilidade na introdução.
Exemplo
Consulte o exemplo em _spawn, funções de _wspawn.