|
dev
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Application.UserAppDataPath Questionformat: 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 Show quote "David White" wrote: > 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. > Check out the Environment.SpecialFolder enumeration documentation:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemenvironmentspecialfolderclasstopic.asp -- Show quoteHTH, Kevin Spencer Microsoft MVP ..Net Developer A brute awe as you, a Metallic hag entity, eat us. "David White" <whitedav***@comcast.net> wrote in message news:OFqVpiNPGHA.3196@TK2MSFTNGP09.phx.gbl... > 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. |
|||||||||||||||||||||||