_execl, _wexecl
Carrega e executa novos processos filho.
Importante
Esta API não pode ser usada em aplicativos que executam no Tempo de Execução do Windows.Para obter mais informações, consulte Funções CRT sem suporte pelo /ZW.
intptr_t _execl(
const char *cmdname,
const char *arg0,
... const char *argn,
NULL
);
intptr_t _wexecl(
const wchar_t *cmdname,
const wchar_t *arg0,
... const wchar_t *argn,
NULL
);
Parâmetros
cmdname
Caminho do arquivo a ser executado.arg0, ...argn
Lista dos ponteiros dos parâmetros.
Valor de retorno
Se bem-sucedidas, essas funções não retornarão ao processo de chamada. Um valor de retorno de –1 indica um erro, caso em que a variável global errno é definida.
valor de errno |
Descrição |
---|---|
E2BIG |
O espaço necessário para os argumentos e as configurações de ambiente excedem 32 KB. |
EACCES |
O arquivo especificado tem uma violação de bloqueio ou compartilhamento. |
EINVAL |
Parâmetro inválido (um ou mais dos parâmetros eram um ponteiro nulo ou uma cadeia de caracteres vazia). |
EMFILE |
Muitos arquivos abertos (o arquivo especificado deve ser aberto para determinar se ele é executável.) |
ENOENT |
Arquivo ou caminho não encontrado. |
ENOEXEC |
O arquivo especificado não é executável ou tem um formato de arquivo executável inválido. |
ENOMEM |
Não há memória suficiente disponível para executar o novo processo; a memória disponível foi corrompida; ou existe um bloco inválido, indicando que o processo de chamada não foi alocado adequadamente. |
Comentários
Cada uma dessas funções carrega e executa um novo processo, passando cada argumento de linha de comando como um parâmetro separado. O primeiro argumento é o comando ou o nome de arquivo executável, e o segundo argumento deve ser o mesmo que o primeiro. Se transforma em argv[0] no processo executado. O terceiro argumento é o primeiro argumento, argv[1], do processo que está sendo executado.
As funções de _execl validam seus parâmetros. Se cmdname ou arg0 for um ponteiro nulo ou cadeia de caracteres vazia, essas funções chamarão o manipulador de parâmetro inválido conforme descrito em Validação do parâmetro. Se a execução puder continuar, essas funções definem errno como EINVAL e retornam -1. Nenhum novo processo é executado.
Requisitos
Função |
Cabeçalho necessário |
Cabeçalho opcional |
---|---|---|
_execl |
<process.h> |
<errno.h> |
_wexecl |
<process.h> ou <wchar.h> |
<errno.h> |
Para obter mais informações sobre compatibilidade, consulte Compatibilidade.
Exemplo
Consulte o exemplo em Funções _exec, _wexec.