_spawnvpe, _wspawnvpe
Criar e executar 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 _spawnvpe( int mode, const char *cmdname, const char *const *argv, const char *const *envp ); intptr_t _wspawnvpe( int mode, const wchar_t *cmdname, const wchar_t *const *argv, const wchar_t *const *envp );
Parâmetros
mode
Modo de execução do processo de chamadacmdname
Caminho do arquivo a ser executadoargv
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.envp
Matriz de ponteiros para configurações de ambiente
Valor de retorno
O valor de retorno de _spawnvpe síncrono ou _wspawnvpe (_P_WAIT especificado para mode) é o status de saída do novo processo.O valor de retorno de _spawnvpe assíncrono ou de _wspawnvpe (_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 bytesEINVAL
o argumento demode não é válidoENOENT
Arquivo ou o caminho não são encontradosENOEXEC
O arquivo especificado não é executável ou tem o formato de arquivo executável inválidoENOMEM
Não está disponível memória suficiente para executar o novo processo
Consulte _doserrno, errno, _sys_errlist, e _sys_nerr para obter mais informações sobre eles, e outros códigos de retorno.
Comentários
Cada uma dessas funções cria e executa um novo processo, passando uma matriz de ponteiros para argumentos de linha de comando e uma matriz de ponteiros para configurações de ambiente.Essas funções usam a variável de ambiente de PATH para localizar o arquivo para executar.
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 |
---|---|
_spawnvpe |
<stdio.h> ou <process.h> |
_wspawnvpe |
<stdio.h> ou <wchar.h> |
Para informações extras de compatibilidade Compatibilidade na introdução, consulte.
Exemplo
Consulte o exemplo em _spawn, funções de _wspawn.