Partilhar via


_spawnlp, _wspawnlp

Cria e executa um novo processo.

intptr_t _spawnlp(
   int mode,
   const char *cmdname,
   const char *arg0,
   const char *arg1,
   ... const char *argn,
   NULL 
);
intptr_t _wspawnlp(
   int mode,
   const wchar_t *cmdname,
   const wchar_t *arg0,
   const wchar_t *arg1,
   ... const wchar_t *argn,
   NULL 
);

Parâmetros

  • mode
    Modo de execução para o processo de chamada.

  • cmdname
    Caminho do arquivo a ser executado.

  • arg0, arg1, ... argn
    Lista de ponteiros para os argumentos.The arg0 argumento é geralmente um ponteiro para cmdname. Os argumentos arg1 por meio de argn ponteiros para seqüências de caractere estão formando a nova lista de argumentos. A seguirargn, deve haver um NULL ponteiro para marcar o participante da lista de argumento.

Valor de retorno

O valor retornado de um síncrono _spawnlp ou _wspawnlp (_P_WAIT especificado para mode) é o status de sair do novo processo. O valor retornado de um assíncrono _spawnlp ou _wspawnlp (_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 cada argumento de linha de comando sistema autônomo um parâmetro separado e usando 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 arg0 é uma seqüência de caracteres vazia ou um ponteiro nulo, essas funções gerem uma exceção de parâmetro inválido sistema autônomo 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

_spawnlp

<processo.h>

_wspawnlp

<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