C# Windows 프로그래밍에서 Application SpecialFolder 경로 차이
using System;
namespace EnvironmentCheck
{
class Program
{
static void Main(string[] args)
{
Console.Write(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\n");
Console.Write(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData)+ "\n");
Console.Write(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)+ "\n");
}
}
}
== Win 7 x64 ==
C:\Users\<user name>\AppData\Roaming
C:\ProgramData
C:\Users\<user name>\AppData\Local
== Windows XP ==
ApplicationData: C:\Documents and Settings\<user name>\Application Data
CommonApplicationData: C:\Documents and Settings\All Users\Application Data
LocalApplicationData: C:\Documents and Settings\<user name>\Local Settings\Application Data
Environment.SpecialFolder.ApplicationData is the most common one. This folder holds per-user, non-temporary application-specific data, other than user documents. A common example would be a settings or configuration file.
Environment.SpecialFolder.CommonApplicationData is similar, but shared across users. You could use this to store document templates, for instance.
Environment.SpecialFolder.LocalApplicationData is a non-roaming alternative for ApplicationData. As such, you'd never store important data there. However, because it's non-roaming it is a good location for temporary files, caches, etcetera. It's typically on a local disk.