Environment.GetEnvironmentVariables Method (EnvironmentVariableTarget)


Retrieves all environment variable names and their values from the current process, or from the Windows operating system registry key for the current user or local machine.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

static member GetEnvironmentVariables : 
        target:EnvironmentVariableTarget -> IDictionary


Type: System.EnvironmentVariableTarget

One of the EnvironmentVariableTarget values.

Return Value

Type: System.Collections.IDictionary

A dictionary that contains all environment variable names and their values from the source specified by the target parameter; otherwise, an empty dictionary if no environment variables are found.

Exception Condition

The caller does not have the required permission to perform this operation for the specified value of target.


target contains an illegal value.

The target parameter specifies whether the source is the current process, the registry key for the current user, or the registry key for the local machine.

The names and values of the environment variables are stored as key/value pairs in the returned IDictionary object.

The following example creates environment variables for the Process, User, and Machine targets, checks whether the operating system registry contains the User and Machine environment variables, then deletes the environment variables.

No code example is currently available or this language may not be supported.


for the ability to read the names and values of environment variables if target is Process (Associated enumeration: EnvironmentPermissionAccess.Read),


for full access to environment variables if target is User or Machine (Associated enumeration: PermissionState.Unrestricted).

.NET Framework
Available since 2.0
Return to top