特殊フォルダのパスを取得する。DownloadフォルダはShell.Applicationを利用してパスを取得する
Environment.SpecialFolder 列挙定数
// ドキュメント
string DocumentsPath= Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
// デスクトップ
string DesktopPath = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory);
// ピクチャ
string PicturesPath = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);
// ビデオ
string VideosPath = Environment.GetFolderPath(Environment.SpecialFolder.MyVideos);
// ミュージック
string MusicPath = Environment.GetFolderPath(Environment.SpecialFolder.MyMusic);
// ダウンロード
var instanceType = Type.GetTypeFromProgID("Shell.Application");
dynamic shell = Activator.CreateInstance(instanceType);
var folder = shell.Namespace("shell:Downloads");
string DownloadPath = folder.Self.Path;