Compartilhar via


system, _wsystem

Executa um comando.

Importante

Não é possível usar essa API em aplicativos executados no Tempo de Execução do Windows.Para obter mais informações, consulte Funções CRT sem suporte pelo /ZW.

int system(
   const char *command 
);
int _wsystem(
   const wchar_t *command 
);

Parâmetros

  • command
    O comando a ser executado.

Valor de retorno

Se command é NULL e o interpretador de comandos for encontrado, retorna um valor diferente de zero. Se o interpretador de comandos não for encontrado, retorna 0 e defina errno a ENOENT. Se command não é NULL, system retorna o valor retornado pelo interpretador de comandos. Retorna o valor 0 somente se o interpretador de comandos retorna o valor 0. Um valor de retorno – 1 indica um erro, e errno é definido como um dos seguintes valores:

  • E2BIG
    A lista de argumentos (sistema que é dependente) é muito grande.

  • ENOENT
    O interpretador de comandos não pode ser localizado.

  • ENOEXEC
    O arquivo do interpretador de comandos não pode ser executado porque o formato não é válido.

  • ENOMEM
    Não há memória suficiente para executar o comando; ou a memória disponível foi danificada; um bloco ou não válido existe, que indica que o processo que está fazendo a chamada não esteve atribuída corretamente.

Consulte _doserrno, errno, _sys_errlist, e _sys_nerr para obter mais informações sobre esses códigos de retorno.

Comentários

A função de system passa command ao interpretador de comandos, que executa a cadeia de caracteres como um comando de sistema operacional. system usa as variáveis de ambiente de COMSPEC e de PATH para localizar o arquivo CMD.exe do interpretador de comandos. Se command é NULL, a função verifica apenas se o interpretador de comandos existe.

Você deve resplendor- explicitamente por usar fflush ou _flushall— ou para fechar qualquer fluxo antes de chamar system.

_wsystem é uma versão de caractere longo de system; o argumento command para _wsystem é uma cadeia de caractere longo. Essas funções se comportam exatamente o contrário.

Mapeamentos da rotina de texto genérico

Rotina TCHAR.H

_UNICODE & _MBCS não definido

_MBCS definido

_UNICODE definido

_tsystem

system

system

_wsystem

Requisitos

Rotina

Cabeçalho necessário

system

<process.h> ou <stdlib.h>

_wsystem

<process.h ou> stdlib.h <ou wchar.h> <>

Para obter informações adicionais sobre compatibilidade, consulte Compatibilidade.

Exemplo

Este exemplo usa system TYPE COMO um arquivo de texto.

// crt_system.c

#include <process.h>

int main( void )
{
   system( "type crt_system.txt" );
}

Entrada: crt_system.txt

Line one.
Line two.

Saída

Line one.
Line two.

Equivalência do .NET Framework

Consulte também

Referência

Processo e controle de ambiente

Funções _exec, _wexec

exit, _exit

_flushall

Funções _spawn, _wspawn