Freigeben über


System.Environment.GetEnvironmentVariable-Methoden

Dieser Artikel enthält ergänzende Hinweise zur Referenzdokumentation für diese API.

Die GetEnvironmentVariable Methode ruft den Wert einer Umgebungsvariable aus dem aktuellen Prozess ab.

Bei Namen von Umgebungsvariablen wird die Groß-/Kleinschreibung auf Unix-ähnlichen Systemen beachtet, bei Windows wird jedoch keine Groß-/Kleinschreibung beachtet.

Hinweis

In-Process-Umgebungsänderungen, die von systemeigenen Bibliotheken vorgenommen werden, werden von verwalteten Aufrufern nicht angezeigt. Umgekehrt werden solche Änderungen, die von verwalteten Aufrufern vorgenommen werden, von systemeigenen Bibliotheken nicht angezeigt.

GetEnvironmentVariable(String)-Methode

Die GetEnvironmentVariable(String) Methode ruft nur eine Umgebungsvariable aus dem Umgebungsblock des aktuellen Prozesses ab. Es entspricht dem Aufrufen der GetEnvironmentVariable(String, EnvironmentVariableTarget) Methode mit einem target Wert von EnvironmentVariableTarget.Process.

Rufen Sie die GetEnvironmentVariables Methode auf, um alle Umgebungsvariablen zusammen mit ihren Werten abzurufen.

Unter Windows-Systemen

Auf Windows-Systemen umfasst der Umgebungsblock des aktuellen Prozesses Folgendes:

  • Alle Umgebungsvariablen, die vom übergeordneten Prozess bereitgestellt werden, der sie erstellt hat. Beispielsweise erbt eine .NET-Anwendung, die über ein Konsolenfenster gestartet wird, alle Umgebungsvariablen des Konsolenfensters.

    Wenn kein übergeordneter Prozess vorhanden ist, werden stattdessen Variablen pro Computer und Umgebungsvariablen pro Benutzer verwendet. Ein neues Konsolenfenster verfügt z. B. über alle Variablen pro Computer und benutzerspezifische Umgebung, die zum Zeitpunkt des Startes definiert wurden.

  • Alle Variablen, die dem Prozessblock hinzugefügt werden, während der Prozess ausgeführt wird, indem entweder die SetEnvironmentVariable(String, String) Methode oder die SetEnvironmentVariable(String, String, EnvironmentVariableTarget) Methode mit einem target Wert von EnvironmentVariableTarget.Processaufgerufen wird. Diese Umgebungsvariablen bleiben bestehen, bis die .NET-Anwendung beendet wird.

Wenn Umgebungsvariablen erstellt werden, nachdem der Prozess gestartet wurde, können Sie diese Methode verwenden, um nur die Variablen abzurufen, die durch Aufrufen der SetEnvironmentVariable(String, String) Methode oder der SetEnvironmentVariable(String, String, EnvironmentVariableTarget) Methode mit dem target Wert ".EnvironmentVariableTarget.Process" erstellt wurden.

Auf Unix-ähnlichen Systemen

Auf Unix-ähnlichen Systemen umfasst der Umgebungsblock des aktuellen Prozesses die folgenden Umgebungsvariablen:

.NET auf Unix-ähnlichen Systemen unterstützt keine Variablen pro Computer oder Umgebungsvariablen pro Benutzer.

GetEnvironmentVariable(String, EnvironmentVariableTarget)-Methode

Rufen Sie die GetEnvironmentVariables Methode auf, um alle Umgebungsvariablen zusammen mit ihren Werten abzurufen.

Unter Windows-Systemen

Unter Windows gibt der target Parameter an, ob die Umgebungsvariable aus dem aktuellen Prozess oder aus dem Windows-Betriebssystemregistrierungsschlüssel für den aktuellen Benutzer oder lokalen Computer abgerufen wird. Alle Umgebungsvariablen pro Benutzer und Computer werden automatisch in den Umgebungsblock des aktuellen Prozesses kopiert, ebenso wie alle anderen Umgebungsvariablen, die für den übergeordneten Prozess verfügbar sind, der den .NET-Prozess erstellt hat. Umgebungsvariablen werden jedoch nur dem Umgebungsblock des aktuellen Prozesses hinzugefügt, indem entweder die SetEnvironmentVariable(String, String) Methode oder die SetEnvironmentVariable(String, String, EnvironmentVariableTarget) Methode mit dem target Wert " EnvironmentVariableTarget.Process Persist" nur für die Dauer des Prozesses aufgerufen wird.

Auf Unix-ähnlichen Systemen

Auf Unix-ähnlichen Systemen unterstützt die GetEnvironmentVariable(String, EnvironmentVariableTarget) Methode nur den target Wert EnvironmentVariableTarget.Process . Anrufe mit einem target Wert von EnvironmentVariableTarget.Machine oder EnvironmentVariableTarget.User werden nicht unterstützt und zurückgegeben null.

Prozessbezogene Umgebungsvariablen sind: