Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo fornece comentários 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.
Nomes de variáveis de ambiente são sensíveis a maiúsculas e minúsculas em sistemas semelhantes a Unix, mas não são sensíveis a maiúsculas e minúsculas no Windows.
Observação
As modificações de ambiente em processo feitas por bibliotecas nativas não são vistas por chamadores gerenciados. Por outro lado, essas modificações feitas por chamadores gerenciados não são vistas pelas bibliotecas nativas.
método GetEnvironmentVariable(String)
O GetEnvironmentVariable(String) método recupera uma variável de ambiente somente do bloco de ambiente do processo atual. É equivalente a chamar o método GetEnvironmentVariable(String, EnvironmentVariableTarget) com um valor target de EnvironmentVariableTarget.Process.
Para recuperar todas as variáveis de ambiente junto 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 do console herda todas as variáveis de ambiente da janela do console.
Se não houver nenhum processo pai, variáveis de ambiente por computador e por usuário serão usadas. Por exemplo, uma nova janela de console tem todas as variáveis de ambiente por computador e por usuário definidas no momento em que foi iniciada.
Qualquer variável adicionada ao bloco de processo enquanto o processo é executado, ao chamar o método SetEnvironmentVariable(String, String) ou o método SetEnvironmentVariable(String, String, EnvironmentVariableTarget) com um valor
targetde 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 semelhantes ao Unix, 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.
Qualquer variável adicionada ao bloco de processo enquanto o processo é executado, ao chamar o método SetEnvironmentVariable(String, String) ou o método SetEnvironmentVariable(String, String, EnvironmentVariableTarget) com um valor
targetde EnvironmentVariableTarget.Process. Essas variáveis de ambiente persistem até que o aplicativo .NET seja encerrado.
O .NET em sistemas semelhantes a Unix não dá suporte a variáveis de ambiente por computador ou por usuário.
método GetEnvironmentVariable(String, EnvironmentVariableTarget)
Para recuperar todas as variáveis de ambiente junto 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 o computador local. Todas as variáveis de ambiente por usuário e por computador são automaticamente copiadas 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, variáveis de ambiente adicionadas somente ao bloco de ambiente do processo atual ao chamar o método SetEnvironmentVariable(String, String) ou SetEnvironmentVariable(String, String, EnvironmentVariableTarget) com um valor de target igual a EnvironmentVariableTarget.Process persistem somente durante a duração do processo.
Em sistemas semelhantes ao Unix
Em sistemas semelhantes ao Unix, o método GetEnvironmentVariable(String, EnvironmentVariableTarget) oferece suporte apenas ao valor targetEnvironmentVariableTarget.Process. Chamadas com um valor de target, EnvironmentVariableTarget.Machine ou EnvironmentVariableTarget.User não são suportadas e retornam null.
As variáveis de ambiente por processo são:
Aqueles herdados do processo pai, normalmente o shell usado para invocar
dotnet.exeou iniciar o aplicativo .NET.Aqueles definidos 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 somente até que odotnetprocesso ou o aplicativo .NET seja encerrado.