Processo e controle do ambiente

Use as rotinas de controle de processo para iniciar, parar e gerenciar processos de dentro de um programa.Use as rotinas de controle do ambiente para obter e alterar informações sobre o ambiente do sistema operacional.

Processo e as funções de controle do ambiente

Rotina

Uso

.Equivalente do NET Framework

anular

Anular o processo sem buffers de liberação ou chamar funções registradas por atexit e_onexit

Não aplicável.Para chamar a função c padrão, use PInvoke.Para obter mais informações, consulte Exemplos de invocação de plataforma.

Assert

Teste para erro de lógica

System::Diagnostics::Debug:: Assert

_ASSERT, _ASSERTE macros

Semelhante a assert, mas só está disponível nas versões de depuração das bibliotecas de tempo de execução

System::Diagnostics::Debug:: Assert

atexit

Rotinas de agendamento para execução em término do programa

System::Diagnostics::Process:: saiu

_beginthread, _ beginthreadex

Criar um novo segmento em um processo do sistema operacional Windows

System::Threading::thread::Start

_cexit

Execute exit os procedimentos de terminação (como a liberação de buffers), devolver o controle ao programa de chamada sem encerrar processo

System::Diagnostics::Process::CloseMainWindow

_c_exit

Execute _exit procedimentos de terminação, devolver o controle ao programa de chamada sem encerrar processo

System::Diagnostics::Process::CloseMainWindow

_cwait

Aguarde até que o outro processo é encerrado

System::Diagnostics::Process::WaitForExit

_endthread, _endthreadex

Encerrar um segmento do sistema operacional Windows

Não aplicável.Para chamar a função c padrão, use PInvoke.Para obter mais informações, consulte Exemplos de invocação de plataforma.

_execl, _wexecl

Executar o processo de novo com a lista de argumentos

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

_execle, _wexecle

Executar o novo processo com a lista de argumentos e de acordo com ambiente

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

_execlp, _wexeclp

Executar o novo processo usando PATH lista variável e o argumento

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

_execlpe, _wexeclpe

Executar o novo processo usando PATH variável, considerando o ambiente e a lista de argumentos

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

_execv, _wexecv

Executar o processo de novo com a matriz de argumentos

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

_execve, _wexecve

Executar o novo processo com a matriz de argumentos e de acordo com ambiente

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

_execvp, _wexecvp

Executar o novo processo usando PATH variável e o argumento de matriz

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

_execvpe, _wexecvpe

Executar o novo processo usando PATH variável, considerando o ambiente e a matriz de argumentos

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

sair

Chamar funções registradas por atexit e _onexit, liberar todos os buffers, fechar todos os arquivos abertos e encerrar o processo

System::Diagnostics::Process::kill

_exit

Encerrar o processo imediatamente, sem chamada atexit ou _onexit ou liberação de buffers

System::Diagnostics::Process::kill

GETENV, _wgetenv,getenv_s, _wgetenv_s

Obter o valor da variável de ambiente

System::Environment::GetEnvironmentVariable

_getpid

Obtenha o número de identificação de processo

System::Diagnostics::Process::ID

longjmp

Ambiente de pilha de restauração salva; usá-lo para executar um não-locaisgoto

Não aplicável.Para chamar a função c padrão, use PInvoke.Para obter mais informações, consulte Exemplos de invocação de plataforma.

_onexit

Rotinas de agendamento para execução em término do programa; Use para compatibilidade com a versão 7.0 do Microsoft C/C++ e anterior

System::Diagnostics::Process:: saiu

_pclose

Aguarde o novo processador de comando e fechar o fluxo em pipe associado

Não aplicável.Para chamar a função c padrão, use PInvoke.Para obter mais informações, consulte Exemplos de invocação de plataforma.

perror, _wperror

Mensagem de erro de impressão.

Não aplicável.Para chamar a função c padrão, use PInvoke.Para obter mais informações, consulte Exemplos de invocação de plataforma.

_pipe

Criar pipe para leitura e gravação

Não aplicável.Para chamar a função c padrão, use PInvoke.Para obter mais informações, consulte Exemplos de invocação de plataforma.

_popen, _wpopen

Criar pipe e executar o comando

Não aplicável.Para chamar a função c padrão, use PInvoke.Para obter mais informações, consulte Exemplos de invocação de plataforma.

_putenv, _wputenv,_putenv_s, _wputenv_s

Adicionar ou alterar o valor da variável de ambiente

Não aplicável.Para chamar a função c padrão, use PInvoke.Para obter mais informações, consulte Exemplos de invocação de plataforma.

Raise

Enviar o sinal para o processo de chamada

Não aplicável.Para chamar a função c padrão, use PInvoke.Para obter mais informações, consulte Exemplos de invocação de plataforma.

setjmp

Salvar o ambiente de pilha. Use para executar non localgoto

Não aplicável.Para chamar a função c padrão, use PInvoke.Para obter mais informações, consulte Exemplos de invocação de plataforma.

sinal

Lidar com o sinal de interrupção

Não aplicável.Para chamar a função c padrão, use PInvoke.Para obter mais informações, consulte Exemplos de invocação de plataforma.

_spawnl, _wspawnl

Criar e executar o novo processo com a lista de argumentos especificado

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

_spawnle, _wspawnle

Criar e executar o novo processo com a lista de argumento especificado e o ambiente

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

_spawnlp, _wspawnlp

Criar e executar o novo processo usando PATH variável e lista de argumentos especificado

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

_spawnlpe, _wspawnlpe

Criar e executar o novo processo usando PATH variável de ambiente especificada e lista de argumentos

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

_spawnv, _wspawnv

Criar e executar o novo processo com a matriz de argumento especificado

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

_spawnve, _wspawnve

Criar e executar o novo processo com ambiente especificada e a matriz de argumentos

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

_spawnvp, _wspawnvp

Criar e executar o novo processo usando PATH variável e matriz de argumento especificado

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

_spawnvpe, _wspawnvpe

Criar e executar o novo processo usando PATH variável de ambiente especificada e matriz de argumentos

Classe System::Diagnostics::Process, System::Diagnostics::ProcessStartInfo classe

sistema, _wsystem

Execute o comando do sistema operacional

Classe System::Diagnostics::ProcessStartInfo, System::Diagnostics::Process classe

No sistema operacional Windows, o processo gerado é equivalente ao processo de geração.Qualquer processo pode usar _cwait para aguardar a qualquer outro processo para o qual a identificação do processo é conhecida.

A diferença entre a _exec e _spawn famílias é que uma _spawn função pode retornar o controle do processo de novo para o processo de chamada.Em um _spawn funcionar, tanto o processo de chamada e o novo processo estão presentes na memória, a menos que _P_OVERLAY é especificado.Em um _exec função, as sobreposições de processo novo processar a chamada, para que o controle não pode retornar para o processo de chamada, a menos que ocorre um erro ao tentar iniciar a execução do novo processo.

As diferenças entre as funções na _exec da família, bem como entre aqueles na _spawn família, envolvem o método de localizar o arquivo a ser executado como o novo processo, o formulário no qual os argumentos são passados para o novo processo e o método de configuração do ambiente, como mostrado na tabela a seguir.Use uma função que passa uma lista de argumentos, quando o número de argumentos constante ou conhecido em tempo de compilação.Use uma função que passa um ponteiro para uma matriz que contém os argumentos, quando o número de argumentos é para ser determinado em tempo de execução.As informações na tabela a seguir também se aplica para as suas similares do caractere largo da _spawn e _exec funções.

Famílias de função de _spawn e _exec

Funções

Use a variável PATH para localizar o arquivo

Convenção de passagem de argumento

Configurações de ambiente

_execl, _spawnl

Não

List

Herdadas do processo de chamada

_execle, _spawnle

Não

List

Ponteiro para a tabela de ambiente para o novo processo é passado como o último argumento

_execlp, _spawnlp

Sim

List

Herdadas do processo de chamada

_execlpe, _spawnlpe

Sim

List

Ponteiro para a tabela de ambiente para o novo processo é passado como o último argumento

_execv, _spawnv

Não

Matriz

Herdadas do processo de chamada

_execve, _spawnve

Não

Matriz

Ponteiro para a tabela de ambiente para o novo processo é passado como o último argumento

_execvp, _spawnvp

Sim

Matriz

Herdadas do processo de chamada

_execvpe, _spawnvpe

Sim

Matriz

Ponteiro para a tabela de ambiente para o novo processo é passado como o último argumento

Consulte também

Referência

Rotinas de tempo de execução por categoria