Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Observação
Este artigo fornece observações complementares à documentação de referência para esta API.
O GetEnvironmentVariable método recupera o valor de uma variável de ambiente do processo atual.
Os nomes de variáveis de ambiente são sensíveis ao caso em sistemas semelhantes a Unix, mas não são sensíveis ao caso no Windows.
Observação
As modificações de ambiente em processo feitas por bibliotecas nativas não são vistas pelos chamadores gerenciados. Por outro lado, essas modificações feitas por chamadores gerenciados não são vistas pelas bibliotecas nativas.
GetEnvironmentVariable(String) método
O GetEnvironmentVariable(String) método recupera uma variável de ambiente do bloco de ambiente do processo atual somente. É equivalente a chamar o método GetEnvironmentVariable(String, EnvironmentVariableTarget) com um valor target de EnvironmentVariableTarget.Process.
Para recuperar todas as variáveis de ambiente juntamente com seus valores, chame o GetEnvironmentVariables método.
Em sistemas Windows
Em sistemas Windows, o bloco de ambiente do processo atual inclui:
Todas as variáveis de ambiente que são fornecidas a ele pelo processo pai que o criou. Por exemplo, um aplicativo .NET iniciado a partir de uma janela de console herda todas as variáveis de ambiente da janela de console.
Se não houver nenhum processo pai, as variáveis de ambiente por máquina e por usuário serão usadas. Por exemplo, uma nova janela de console tem todas as variáveis de ambiente por máquina e por usuário definidas no momento em que foi iniciada.
Todas as variáveis adicionadas ao bloco de processo enquanto o processo está em execução, chamando o SetEnvironmentVariable(String, String) método ou o SetEnvironmentVariable(String, String, EnvironmentVariableTarget) método com um
targetvalor de EnvironmentVariableTarget.Process. Essas variáveis de ambiente persistem até que o aplicativo .NET seja encerrado.
Se as variáveis de ambiente forem criadas após o início do processo, você poderá usar esse método para recuperar somente as variáveis que foram criadas chamando o SetEnvironmentVariable(String, String) método ou o SetEnvironmentVariable(String, String, EnvironmentVariableTarget) método com um target valor de .EnvironmentVariableTarget.Process.
Em sistemas semelhantes ao Unix
Em sistemas Unix-like, o bloco de ambiente do processo atual inclui as seguintes variáveis de ambiente:
Todas as variáveis de ambiente que são fornecidas a ele pelo processo pai que o criou. Para aplicativos .NET iniciados a partir de um shell, isso inclui todas as variáveis de ambiente definidas no shell.
Todas as variáveis adicionadas ao bloco de processo enquanto o processo está em execução, chamando o SetEnvironmentVariable(String, String) método ou o SetEnvironmentVariable(String, String, EnvironmentVariableTarget) método com um
targetvalor de EnvironmentVariableTarget.Process. Essas variáveis de ambiente persistem até que o aplicativo .NET seja encerrado.
O .NET em sistemas Unix-like não suporta variáveis de ambiente por máquina ou por usuário.
GetEnvironmentVariable(String, EnvironmentVariableTarget) método
Para recuperar todas as variáveis de ambiente juntamente com seus valores, chame o GetEnvironmentVariables método.
Em sistemas Windows
No Windows, o target parâmetro especifica se a variável de ambiente é recuperada do processo atual ou da chave do Registro do sistema operacional Windows para o usuário atual ou a máquina local. Todas as variáveis de ambiente por usuário e por máquina são copiadas automaticamente para o bloco de ambiente do processo atual, assim como quaisquer outras variáveis de ambiente disponíveis para o processo pai que criou o processo .NET. No entanto, as variáveis de ambiente adicionadas somente ao bloco de ambiente do processo atual chamando o método SetEnvironmentVariable(String, String) ou o método SetEnvironmentVariable(String, String, EnvironmentVariableTarget) com um valor de target persistem somente durante o tempo de vida do processo.
Em sistemas semelhantes ao Unix
Nos sistemas Unix-like, o método GetEnvironmentVariable(String, EnvironmentVariableTarget) suporta apenas um valor de targetEnvironmentVariableTarget.Process. Chamadas com um valor de target ou EnvironmentVariableTarget.Machine não são suportadas e retornam EnvironmentVariableTarget.User.
As variáveis de ambiente por processo são:
Aqueles herdados do processo pai, normalmente o shell utilizado para invocar
dotnet.exeou iniciar o aplicativo .NET.Aqueles definidos pelo método SetEnvironmentVariable(String, String) ou pelo método SetEnvironmentVariable(String, String, EnvironmentVariableTarget) com um valor
targetde EnvironmentVariableTarget.Process. Essas variáveis de ambiente persistem somente até que odotnetprocesso ou o aplicativo .NET seja encerrado.