_spawnlp, _wspawnlp
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 _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 do processo de chamada.cmdname
Caminho do arquivo a ser executado.arg0, arg1, ... argn
Ponteiros a lista de argumentos.O argumento de arg0 é geralmente um ponteiro para cmdname.Os argumentos arg1 com argn são ponteiros para cadeias de caracteres que formam a nova lista de argumentos.Depois de argn, deve haver um ponteiro de NULL para marcar o fim da lista de argumentos.
Valor de retorno
O valor de retorno de _spawnlpsíncrono ou _wspawnlp(_P_WAITespecificado para mode) é o status de saída do novo processo.O valor de retorno de _spawnlp assíncrono ou de _wspawnlp (_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 cada argumento de linha de comando como um parâmetro separado e usando a variável de ambiente PATH para localizar o arquivo para executar.
Essas funções validam seus parâmetros.Se cmdname ou arg0 é uma cadeia de caracteres vazia ou um ponteiro zero, essas funções gera uma exceção de parâmetro inválido, 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 |
---|---|
_spawnlp |
<process.h> |
_wspawnlp |
<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.