Using environment variable in a file path

Flynn1179 picture Flynn1179 · Dec 3, 2010 · Viewed 41.2k times · Source

I've got an environment variable set that points to a specific folder (call it MYFOLDER for example). When typing in %MYFOLDER%\SubFolder into windows explorer the subfolder appears. However, when I pass SelectedPath = @"%MYFOLDER%\SubFolder"; to a FolderBrowserDialog, it doesn't work.

I tried using Path.GetFullPath(..), but this seems to return the bin folder of the executable (while debugging in VS) with %MYFOLDER% on the end, instead of the path I'd expect.

Anyone know how to get it to use the environment variable properly?

Answer

Marc Gravell picture Marc Gravell · Dec 3, 2010

Expand it first:

string path = Environment.ExpandEnvironmentVariables(value);

http://msdn.microsoft.com/en-us/library/system.environment.expandenvironmentvariables.aspx