Search code examples
c#pathenvironment-variablesfolderbrowserdialog

Using environment variable in a file path


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?


Solution

  • Expand it first:

    string path = Environment.ExpandEnvironmentVariables(value);
    

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