_spawnvpe, _wspawnvpe

Criar e executar um novo processo.

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 para chamar processo

  • cmdname
    Caminho do arquivo a ser executado

  • argv
    Matriz de ponteiros para os argumentos.The argument argv[0] is usually a pointer to a path in real mode or to the program name in protected mode, and argv[1] through argv[n] are pointers to the character strings forming the new argument list.The argument argv[n +1] must be a NULL pointer to mark the end of the argument list.

  • envp
    Matriz de ponteiros para as configurações de ambiente

Valor de retorno

O valor retornado de um síncrono _spawnvpe ou _wspawnvpe (_P_WAIT especificado para mode) é o status de sair do novo processo. O valor retornado de um assíncrono _spawnvpe ou _wspawnvpe (_P_NOWAIT ou _P_NOWAITO especificado para mode) é o identificador do processo. O status de sair é 0 se o processo encerrado normalmente.Você pode conjunto o status de sair para um valor diferente de zero se o processo gerado especificamente chama o exit rotina com um argumento diferente de zero. Se o novo processo não conjunto explicitamente um status de sair positivo, um status de sair positiva indica uma sair com uma anulação ou uma interrupção anormal.Um valor retornado de – 1 indica um erro (o novo processo não é iniciado).Nesse caso, errno é definido como um dos seguintes valores:

  • E2BIG
    Lista de argumentos excede 1024 bytes

  • EINVAL
    mode argumento é inválido

  • ENOENT
    Arquivo ou caminho não for encontrado

  • ENOEXEC
    Arquivo especificado não é executável ou tem formato inválido do arquivo executável

  • ENOMEM
    Não há memória suficiente está disponível para executar o novo processo

See _doserrno, errno, _sys_errlist e _sys_nerr para obter mais informações sobre esses e outros códigos 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 as configurações de ambiente.Essas funções usam o PATH variável de ambiente para localizar o arquivo para executar.

Essas funções validar seus parâmetros.Se qualquer um dos cmdname ou argv é um ponteiro nulo, ou se argv aponta para um ponteiro nulo, ou argv[0] é uma seqüência vazia, o manipulador de parâmetro inválido é chamado, conforme descrito em Validação de parâmetro. Se a execução for permitida para continuar, essas funções conjunto errno para EINVALe retornar -1. Nenhum novo processo é gerado.

Requisitos

Rotina

Cabeçalho necessário

_spawnvpe

<stdio.h> ou <processo.h>

_wspawnvpe

<stdio.h> ou <wchar.h>

Para obter informações adicionais compatibilidade, consulte Compatibilidade na introdução.

Exemplo

Veja o exemplo _spawn, _wspawn funções.

Equivalente do NET Framework

Consulte também

Referência

anular

atexit

_exec, _wexec funções

sair, _exit

_flushall

_getmbcp

_onexit, _onexit_m

_setmbcp

sistema, _wsystem