Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo fornisce osservazioni supplementari alla documentazione di riferimento per questa API.
Il GetEnvironmentVariable metodo recupera il valore di una variabile di ambiente dal processo corrente.
I nomi delle variabili di ambiente fanno distinzione tra maiuscole e minuscole nei sistemi simili a Unix, ma non fanno distinzione tra maiuscole e minuscole in Windows.
Annotazioni
Le modifiche dell'ambiente in-process apportate dalle librerie native non vengono visualizzate dai chiamanti gestiti. Al contrario, tali modifiche apportate dai chiamanti gestiti non vengono visualizzate dalle librerie native.
Metodo GetEnvironmentVariable(String)
Il GetEnvironmentVariable(String) metodo recupera una variabile di ambiente solo dal blocco di ambiente del processo corrente. Equivale a chiamare il metodo GetEnvironmentVariable(String, EnvironmentVariableTarget) con un valore target di EnvironmentVariableTarget.Process.
Per recuperare tutte le variabili di ambiente insieme ai relativi valori, chiamare il GetEnvironmentVariables metodo .
Nei sistemi Windows
Nei sistemi Windows, il blocco di ambiente del processo corrente include:
Tutte le variabili di ambiente fornite dal processo padre che lo ha creato. Ad esempio, un'applicazione .NET avviata da una finestra della console eredita tutte le variabili di ambiente della finestra della console.
Se non è presente alcun processo padre, vengono invece usate variabili di ambiente per computer e per utente. Ad esempio, una nuova finestra della console include tutte le variabili di ambiente per computer e per utente definite al momento dell'avvio.
Tutte le variabili aggiunte al blocco di processo durante l'esecuzione del processo, chiamando i metodi SetEnvironmentVariable(String, String) o SetEnvironmentVariable(String, String, EnvironmentVariableTarget) con un valore
targetdi EnvironmentVariableTarget.Process. Queste variabili di ambiente vengono mantenute fino al termine dell'applicazione .NET.
Se le variabili di ambiente vengono create dopo l'avvio del processo, è possibile usare questo metodo per recuperare solo le variabili create chiamando il SetEnvironmentVariable(String, String) metodo o il SetEnvironmentVariable(String, String, EnvironmentVariableTarget) metodo con un target valore .EnvironmentVariableTarget.Process.
Nei sistemi simili a Unix
Nei sistemi simili a Unix, il blocco di ambiente del processo corrente include le variabili di ambiente seguenti:
Tutte le variabili di ambiente fornite dal processo padre che lo ha creato. Per le applicazioni .NET avviate da una shell, sono incluse tutte le variabili di ambiente definite nella shell.
Tutte le variabili aggiunte al blocco di processo durante l'esecuzione del processo, chiamando i metodi SetEnvironmentVariable(String, String) o SetEnvironmentVariable(String, String, EnvironmentVariableTarget) con un valore
targetdi EnvironmentVariableTarget.Process. Queste variabili di ambiente vengono mantenute fino al termine dell'applicazione .NET.
.NET nei sistemi simili a Unix non supporta variabili di ambiente per computer o per utente.
Metodo GetEnvironmentVariable(String, EnvironmentVariableTarget)
Per recuperare tutte le variabili di ambiente insieme ai relativi valori, chiamare il GetEnvironmentVariables metodo .
Nei sistemi Windows
In Windows, il target parametro specifica se la variabile di ambiente viene recuperata dal processo corrente o dalla chiave del Registro di sistema operativo Windows per l'utente corrente o il computer locale. Tutte le variabili di ambiente per utente e per computer vengono copiate automaticamente nel blocco di ambiente del processo corrente, come sono tutte le altre variabili di ambiente disponibili per il processo padre che ha creato il processo .NET. Tuttavia, le variabili di ambiente aggiunte solo al blocco di ambiente del processo corrente persistono solo per la durata del processo, se si utilizza il metodo SetEnvironmentVariable(String, String) o il metodo SetEnvironmentVariable(String, String, EnvironmentVariableTarget) con un valore di target pari a EnvironmentVariableTarget.Process.
Nei sistemi simili a Unix
Nei sistemi simili a Unix, il metodo GetEnvironmentVariable(String, EnvironmentVariableTarget) supporta solo un valore target di EnvironmentVariableTarget.Process. Le chiamate con un target valore di EnvironmentVariableTarget.Machine o EnvironmentVariableTarget.User non sono supportate e restituiscono null.
Le variabili di ambiente per processo sono:
Ereditati dal processo padre, in genere la shell usata per richiamare
dotnet.exeo avviare l'applicazione .NET.Quelli definiti chiamando il metodo SetEnvironmentVariable(String, String) o il metodo SetEnvironmentVariable(String, String, EnvironmentVariableTarget) con un valore di
targetEnvironmentVariableTarget.Process. Queste variabili di ambiente vengono mantenute solo fino al termine deldotnetprocesso o dell'applicazione .NET.