Spezialordner unter Windows sind etwa das Benutzerverzeichnis oder der Temp-Ordner.
Der Zugriff auf die meisten Spezialordner ist in .Net sehr einfach möglich. Dazu verwendet man die Klasse Environment und darin die Methode GetFolderPath().
Als Parameter werden die „SpecialFolders“ verwendet:
- Environment.SpecialFolder.ApplicationData
- Environment.SpecialFolder.System
- Environment.SpecialFolder.CommonApplicationData
- Environment.SpecialFolder.CommonProgramFiles
- Environment.SpecialFolder.Cookies
- Environment.SpecialFolder.Desktop
- Environment.SpecialFolder.DesktopDirectory
- Environment.SpecialFolder.Favorites
- Environment.SpecialFolder.History
- Environment.SpecialFolder.InternetCache
- Environment.SpecialFolder.LocalApplicationData
- Environment.SpecialFolder.MyComputer
- Environment.SpecialFolder.MyMusic
- Environment.SpecialFolder.MyPictures
- Environment.SpecialFolder.Personal
- Environment.SpecialFolder.ProgramFiles
- Environment.SpecialFolder.Programs
- Environment.SpecialFolder.Recent
- Environment.SpecialFolder.SendTo
- Environment.SpecialFolder.StartMenu
Für Details, siehe http://msdn.microsoft.com/de-de/library/system.environment.specialfolder.aspx
Der Zugriff auf den Temp-Ordner funktioniert ein wenig anders. Dazu wird aus den Umgebungsvariablen der entsprechende Wert ausgelesen:
string tempPath = Environment.GetEnvironmentVariable("TEMP");
Alternativ kann man sich den Wert auch aus der Klasse Path geben lassen.
string tempPath = Path.GetTempPath();
Dies scheint mir der bessere Weg zu sein.