_spawnv, _wspawnv

Cria e executa um novo processo.

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 para o processo de chamada.

  • 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.

Valor de retorno

O valor retornado de um síncrono _spawnv ou _wspawnv (_P_WAIT especificado para mode) é o status de sair do novo processo. O valor retornado de um assíncrono _spawnv ou _wspawnv (_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 é conjunto a um dos seguintes valores.

  • E2BIG
    Lista de argumentos excede 1024 bytes.

  • EINVAL
    mode argumento é inválido.

  • ENOENT
    Arquivo ou caminho não foi 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.

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 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

_spawnv

<stdio.h> ou <processo.h>

_wspawnv

<stdio.h> ou <wchar.h>

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

Exemplo

Veja o exemplo _spawn, _wspawn funções.

Equivalente do NET Framework

Consulte também

Referência

Processo e ambiente de controle

_spawn, _wspawn funções

anular

atexit

_exec, _wexec funções

sair, _exit

_flushall

_getmbcp

_onexit, _onexit_m

_setmbcp

sistema, _wsystem