Under .NET 2.0, there is an additional option on the System.Environment.GetEnvironment method allowing specification of a process level, user level, or machine level environment variable. If not specified, only process level environment variables will be examined.
The attached patch enhances the EnvironmentPatternConverter. If the specified environment property is not found in the current process environment, the user environment settings will be checked. If the property is still not found, the machine level environment settings will also be tested.