.NET 4.0 New Feature - Environment.SpecialFolder
.NET 4.0對於Environment.SpecialFolder的成員也做了些擴充,這邊將其擴充的成員列表如下:
成員名稱 | 說明 |
AdminTools | 檔案系統目錄,用於儲存個別使用者的系統管理工具。 Microsoft Management Console (MMC) 會將自訂的主控台儲存至這個目錄,而這個目錄會隨著使用者一起漫遊。 |
CDBurning | 等候寫入光碟之檔案儲存目錄 |
CommonAdminTools | 電腦之所有使用者的系統管理工具目錄 |
CommonDocuments | 檔案系統目錄,包含所有使用者共用的文件。 適用於 Windows NT 系統、Windows 95 和已安裝 Shfolder.dll 的 Windows 98 系統 |
CommonMusic | 所有使用者共用之音樂檔案儲存目錄 |
CommonOemLinks | 基於回溯相容性,Windows Vista 中可以辨識這個值,但已不再使用特殊資料夾本身 |
CommonPictures | 所有使用者共用之影像檔案儲存目錄 |
CommonStartMenu | 檔案系統目錄,包含在所有使用者的 [開始] 功能表上出現的程式和資料夾。 適用於 Windows NT 系統 |
CommonPrograms | 這是存放多個應用程式共用元件的資料夾。 適用 Windows NT 系統、Windows 2000 和 Windows XP 系統 |
CommonStartup | 檔案系統目錄,包含在所有使用者的 [啟動] 資料夾中出現的程式。 適用於 Windows NT 系統 |
CommonDesktopDirectory | 檔案系統目錄,包含在所有使用者的桌面上出現的檔案和資料夾。 適用於 Windows NT 系統 |
CommonTemplates | 檔案系統目錄,包含所有使用者可用的範本。 適用於 Windows NT 系統 |
CommonVideos | 所有使用者共用之視訊檔案的儲存目錄 |
Fonts | 字型目錄 |
MyVideos | 使用者專屬視訊儲存目錄 |
NetworkShortcuts | 檔案系統目錄,包含 [網路上的芳鄰] 虛擬資料夾中可能存在的連結物件 |
PrinterShortcuts | 檔案系統目錄,包含 [印表機] 虛擬資料夾中可能存在的連結物件 |
UserProfile | 使用者的設定檔資料夾。 應用程式不應該在這個層級建立檔案或資料夾,而應該將其資料放在 ApplicationData 所參考的位置下 |
CommonProgramFilesX86 | [Program Files] 資料夾 |
ProgramFilesX86 | [Program Files] 資料夾 |
Resources | 資源目錄 |
LocalizedResources | 當地語系化的資源目錄 |
SystemX86 | Windows [System] 資料夾 |
Windows | Windows 目錄或 SYSROOT。 這個值對應至 %windir% 或 %SYSTEMROOT% 環境變數 |
實際撰寫個範例來看其對應的位置:
using System;
namespace ConsoleApplication1
{
class Program
{
static Environment.SpecialFolder[] folderNames = { Environment.SpecialFolder.AdminTools,
Environment.SpecialFolder.CDBurning,
Environment.SpecialFolder.CommonAdminTools,
Environment.SpecialFolder.CommonDocuments,
Environment.SpecialFolder.CommonMusic,
Environment.SpecialFolder.CommonOemLinks,
Environment.SpecialFolder.CommonPictures,
Environment.SpecialFolder.CommonStartMenu,
Environment.SpecialFolder.CommonPrograms,
Environment.SpecialFolder.CommonStartup,
Environment.SpecialFolder.CommonDesktopDirectory,
Environment.SpecialFolder.CommonTemplates,
Environment.SpecialFolder.CommonVideos,
Environment.SpecialFolder.Fonts,
Environment.SpecialFolder.MyVideos,
Environment.SpecialFolder.NetworkShortcuts,
Environment.SpecialFolder.PrinterShortcuts,
Environment.SpecialFolder.UserProfile,
Environment.SpecialFolder.CommonProgramFilesX86,
Environment.SpecialFolder.ProgramFilesX86,
Environment.SpecialFolder.Resources,
Environment.SpecialFolder.LocalizedResources,
Environment.SpecialFolder.SystemX86,
Environment.SpecialFolder.Windows };
static void Main(string[] args)
{
foreach (Environment.SpecialFolder value in folderNames)
{
Console.WriteLine(value.ToString());
Console.WriteLine(Environment.GetFolderPath(value));
Console.WriteLine();
}
}
}
}
運行後的結果如下:
C:\Documents and Settings\[User Account]\「開始」功能表\程式集\系統管理工具
CDBurning
C:\Documents and Settings\[User Account]\Local Settings\Application Data\Microsoft\C
D Burning
CommonAdminTools
C:\Documents and Settings\All Users\「開始」功能表\程式集\系統管理工具
CommonDocuments
C:\Documents and Settings\All Users\Documents
CommonMusic
C:\Documents and Settings\All Users\Documents\My Music
CommonOemLinks
CommonPictures
C:\Documents and Settings\All Users\Documents\My Pictures
CommonStartMenu
C:\Documents and Settings\All Users\「開始」功能表
CommonPrograms
C:\Documents and Settings\All Users\「開始」功能表\程式集
CommonStartup
C:\Documents and Settings\All Users\「開始」功能表\程式集\啟動
CommonDesktopDirectory
C:\Documents and Settings\All Users\桌面
CommonTemplates
C:\Documents and Settings\All Users\Templates
CommonVideos
C:\Documents and Settings\All Users\Documents\My Videos
Fonts
C:\WINDOWS\Fonts
MyVideos
NetworkShortcuts
C:\Documents and Settings\[User Account]\NetHood
PrinterShortcuts
C:\Documents and Settings\[User Account]\PrintHood
UserProfile
C:\Documents and Settings\[User Account]
CommonProgramFilesX86
ProgramFilesX86
Resources
C:\WINDOWS\resources
LocalizedResources
SystemX86
C:\WINDOWS\system32
Windows
C:\WINDOWS