Como posso obter variáveis de ambiente e, se algo estiver faltando, defina o valor?
c#
.net
.net-2.0
environment-variables
Senhor Dev
fonte
fonte
EnvironmentVariableTarget.Machine
requer acesso de administrador?Eu me deparei com isso enquanto trabalhava em um aplicativo de console .NET para ler a variável de ambiente PATH e descobri que o uso de System.Environment.GetEnvironmentVariable expandirá as variáveis de ambiente automaticamente.
Eu não queria que isso acontecesse ... isso significa que pastas no caminho como '% SystemRoot% \ system32' estavam sendo reescritas como 'C: \ Windows \ system32'. Para obter o caminho não expandido, eu tive que usar isso:
Caiu como uma luva para mim.
fonte
Obter e definir
Obter
Conjunto
fonte
Isso funcionará para uma variável de ambiente que é a configuração da máquina. Para Usuários, basta alterar para Usuário.
fonte
fonte
EnvironmentVariableTarget.Machine
.Eu poderia atualizar a variável de ambiente usando o seguinte
fonte