Application.UserAppDataPath Question

  • Thread starter Thread starter David White
  • Start date Start date
D

David White

The MSDN docs say, "If a path does not exist, one is created in the following
format: BasePath\CompanyName\ProductName\ProductVersion". Where does the
BasePath value come from? It seems the default is "C:\Documents and Settings\
username\Application Data".

But from which of the system environment variables (or elsewhere) is the
BasePath value retrieved? The obvious options seem to be:

%USERPROFILE%

%HOMEDRIVE%%HOMEPATH%

%HOME% (which is set = %USERPROFILE% on my system)

These all resolve to the same location on my system. But for roaming users and
users under Terminal Services, some of these locations can be relocated via
startup scripts somehome (I think) to network locations. So these may all not
always be equal (otherwise why all the different ways to do it?) and I need to
know what changes are picked up by the .Net runtime and passed in.

As an aside - does Application.UserAppDataPath always equal the environment
variable %APPDATA%?

Thanks.
 
Hello David

The BasePath is the AppData environment variable
(e.g. "C:\Documents and Settings\SimonM\Application Data") environment
variable. Hope this helps... You can use the
Environment.GetEnvironmentVariable
method to retrieve the the AppData value (which I presume you already know) as
well as the
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)
method. Hope this helps.

Regards,
Simon
 
Back
Top