【问题标题】:Environment.GetFolderPath(...CommonApplicationData) is still returning "C:\Documents and Settings\" on VistaEnvironment.GetFolderPath(...CommonApplicationData) 在 Vista 上仍然返回“C:\Documents and Settings\”
【发布时间】:2009-05-21 23:09:11
【问题描述】:

据我了解,您应该使用 Environment.GetFolderPath 方法,以便您拥有独立于操作系统的代码...

Windows XP 使用C:\Documents and Settings\。 Windows Vista 使用C:\ProgramDataC:\Users

我在 Windows Vista 计算机上使用下面的代码,它返回一个 C:\Documents and Settings\ 目录,而不是应该的 C:\ProgramData... 有什么想法吗?

    string commonAppData = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
    try
    {
        File.CreateText(
            Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) +
            "\\mycompany\\uid");
        log.Debug("Created file successfully");
    }
    catch (Exception ex)
    {
        log.Error("Unable to create the uid file: ", ex);
    }

【问题讨论】:

  • Vista 安装是从 XP 更新的吗?
  • 不,当它从商店带回家时,它肯定有 Vista ......我猜它可能是由 bestbuy 或其他东西“升级”的(似乎不太可能)。 c:\documents and settings 根本不存在,如果这能告诉你什么的话。
  • 如何将“\\mycompany\\uid”解析为路径?我想生成这个确切的路径(使用公司和用户界面)。我是否必须从程序集中手动添加这些数据?

标签: c# .net


【解决方案1】:

我的安装程序复制了一个在 XP 计算机上生成的 log.txt 文件。我正在查看那个日志文件,认为它是在 Vista 上生成的。一旦我将我的 log4net 配置修复为“Vista 兼容”。 Environment.GetFolderPath 正在返回预期结果。因此,我将关闭这篇文章。

以下 SpecialFolder 路径参考可能有用:

Windows Server 2003 上的输出:

SpecialFolder.ApplicationData:C:\Documents and Settings\blake\Application Data SpecialFolder.CommonApplicationData:C:\Documents and Settings\All Users\Application Data SpecialFolder.ProgramFiles:C:\Program 文件 SpecialFolder.CommonProgramFiles:C:\Program Files\Common Files SpecialFolder.DesktopDirectory: C:\Documents and Settings\blake\Desktop SpecialFolder.LocalApplicationData: C:\Documents and Settings\blake\Local Settings\Application Data SpecialFolder.MyDocuments:C:\Documents and Settings\blake\My Documents SpecialFolder.System: C:\WINDOWS\system32`

Vista 上的输出:

SpecialFolder.ApplicationData: C:\Users\blake\AppData\Roaming SpecialFolder.CommonApplicationData: C:\ProgramData SpecialFolder.ProgramFiles:C:\Program 文件 SpecialFolder.CommonProgramFiles:C:\Program Files\Common Files SpecialFolder.DesktopDirectory: C:\Users\blake\Desktop SpecialFolder.LocalApplicationData: C:\Users\blake\AppData\Local SpecialFolder.MyDocuments: C:\Users\blake\Documents SpecialFolder.System: C:\Windows\system32

【讨论】:

  • 为什么 log4net 配置与 Environment.GetFolderPath 有任何关系?至于“有什么想法吗?”,是的,您以普通用户的身份获得第一个结果,以管理员身份运行的第二个结果,例如运行提升的安装程序或服务时。
  • 另外,我认为阅读所有这些列表的新手应该知道,这些路径不一定是操作系统上的固定路径,但几乎可以是“你的”机器上的任何东西。永远不要硬编码 - 而是使用 GetFolderPath,否则有一天你会后悔的。哦,一定要使用 Path.Combine 而不是加号运算符。
  • 在 wondows10 上,Environment.SpecialFolder.CommonApplicationData 出于某种原因返回 CommonApplicationData。因此正在应用程序路径本身中创建文件夹
  • @mrid Environment.SpecialFolder.CommonApplicationData 是一个枚举;您需要调用Environment.GetFolderPath() 来返回路径,例如Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData).
【解决方案2】:

在 Ubuntu 9.10 上输出 -> Ubuntu 12.04 和单声道 2.10.8.1:

SpecialFolder.ApplicationData: /home/$USER/.config
SpecialFolder.CommonApplicationData: /usr/share
SpecialFolder.ProgramFiles: 
SpecialFolder.DesktopDirectory: /home/$USER/Desktop
SpecialFolder.LocalApplicationData: /home/$USER/.local/share
SpecialFolder.MyDocuments: /home/$USER
SpecialFolder.System: 

SpecialFolder.Personal: /home/$USER

在带有单声道 4.2.1 的 Ubuntu 16.04 上输出

SpecialFolder.ApplicationData: /home/$USER/.config
SpecialFolder.CommonApplicationData: /usr/share
SpecialFolder.ProgramFiles:
SpecialFolder.DesktopDirectory: /home/$USER/Desktop
SpecialFolder.LocalApplicationData: /home/$USER/.local/share
SpecialFolder.MyDocuments: /home/$USER
SpecialFolder.Desktop: /home/$USER/Desktop
SpecialFolder.Personal: /home/$USER

SpecialFolder.System: 
SpecialFolder.Programs: 
SpecialFolder.Favorites: 
SpecialFolder.Startup: 
SpecialFolder.Recent: 
SpecialFolder.SendTo: 
SpecialFolder.StartMenu: 
SpecialFolder.MyMusic: /home/$USER/Music
SpecialFolder.MyVideos: /home/$USER/Videos
SpecialFolder.MyComputer: 
SpecialFolder.NetworkShortcuts: 
SpecialFolder.Fonts: /home/$USER/.fonts
SpecialFolder.Templates: /home/$USER/Templates
SpecialFolder.CommonStartMenu: 
SpecialFolder.CommonPrograms: 
SpecialFolder.CommonStartup: 
SpecialFolder.CommonDesktopDirectory: 
SpecialFolder.PrinterShortcuts: 
SpecialFolder.InternetCache: 
SpecialFolder.Cookies: 
SpecialFolder.History: 
SpecialFolder.Windows: 
SpecialFolder.MyPictures: /home/$USER/Pictures
SpecialFolder.UserProfile: /home/$USER
SpecialFolder.SystemX86: 
SpecialFolder.ProgramFilesX86: 
SpecialFolder.CommonProgramFiles: 
SpecialFolder.CommonProgramFilesX86: 
SpecialFolder.CommonTemplates: /usr/share/templates
SpecialFolder.CommonDocuments: 
SpecialFolder.CommonAdminTools: 
SpecialFolder.AdminTools: 
SpecialFolder.CommonMusic: 
SpecialFolder.CommonPictures: 
SpecialFolder.CommonVideos: 
SpecialFolder.Resources: 
SpecialFolder.LocalizedResources: 
SpecialFolder.CommonOemLinks: 
SpecialFolder.CDBurning: 

其中 $USER 是当前用户

在 Ubuntu 16.04 上使用 dotnet core (3.0.100) 输出

ApplicationData: /home/$USER/.config
CommonApplicationData: /usr/share
ProgramFiles: 
DesktopDirectory: /home/$USER/Desktop
LocalApplicationData: /home/$USER/.local/share
MyDocuments: /home/$USER
System: 
Personal: /home/$USER

使用 Xamarin 7.2 在 Android 6 上输出

Environment.SpecialFolder.ApplicationData: /data/user/0/$APPNAME/files/.config
Environment.SpecialFolder.CommonApplicationData: /usr/share
Environment.SpecialFolder.ProgramFiles: 
Environment.SpecialFolder.DesktopDirectory: /data/user/0/$APPNAME/files/Desktop
Environment.SpecialFolder.LocalApplicationData: /data/user/0/$APPNAME/files/.local/share
Environment.SpecialFolder.MyDocuments: /data/user/0/$APPNAME/files
Environment.SpecialFolder.Desktop: /data/user/0/$APPNAME/files/Desktop
Environment.SpecialFolder.Personal: /data/user/0/$APPNAME/files

Environment.SpecialFolder.Startup: 
Environment.SpecialFolder.Recent: 
Environment.SpecialFolder.SendTo: 
Environment.SpecialFolder.StartMenu: 
Environment.SpecialFolder.MyMusic: /data/user/0/$APPNAME/files/Music
Environment.SpecialFolder.MyVideos: /data/user/0/$APPNAME/files/Videos
Environment.SpecialFolder.MyComputer: 
Environment.SpecialFolder.NetworkShortcuts: 
Environment.SpecialFolder.Fonts: /data/user/0/$APPNAME/files/.fonts
Environment.SpecialFolder.Templates: /data/user/0/$APPNAME/files/Templates
Environment.SpecialFolder.CommonStartMenu: 
Environment.SpecialFolder.CommonPrograms: 
Environment.SpecialFolder.CommonStartup: 
Environment.SpecialFolder.CommonDesktopDirectory: 
Environment.SpecialFolder.PrinterShortcuts: 
Environment.SpecialFolder.InternetCache: 
Environment.SpecialFolder.Cookies: 
Environment.SpecialFolder.History: 
Environment.SpecialFolder.Windows: 
Environment.SpecialFolder.MyPictures: /data/user/0/$APPNAME/files/Pictures
Environment.SpecialFolder.UserProfile: /data/user/0/$APPNAME/files
Environment.SpecialFolder.SystemX86: 
Environment.SpecialFolder.ProgramFilesX86: 
Environment.SpecialFolder.CommonProgramFiles: 
Environment.SpecialFolder.CommonProgramFilesX86: 
Environment.SpecialFolder.CommonTemplates: /usr/share/templates
Environment.SpecialFolder.CommonDocuments: 
Environment.SpecialFolder.CommonAdminTools: 
Environment.SpecialFolder.AdminTools: 
Environment.SpecialFolder.CommonMusic: 
Environment.SpecialFolder.CommonPictures: 
Environment.SpecialFolder.CommonVideos: 
Environment.SpecialFolder.Resources: 
Environment.SpecialFolder.LocalizedResources: 
Environment.SpecialFolder.CommonOemLinks: 
Environment.SpecialFolder.CDBurning: 

其中 $APPNAME 是 Xamarin 应用程序的名称(例如 MyApp.Droid)

使用 Xamarin 7.2 在 iOS 模拟器 10.3 上输出

ApplicationData: /Users/$USER/Library/Developer/CoreSimulator/Devices/$DEVICEGUID/data/Containers/Data/Application/$APPLICATIONGUID/Documents/.config
CommonApplicationData: /usr/share
ProgramFiles: /Applications
DesktopDirectory: /Users/$USER/Library/Developer/CoreSimulator/Devices/$DEVICEGUID/data/Containers/Data/Application/$APPLICATIONGUID/Documents/Desktop
LocalApplicationData: /Users/$USER/Library/Developer/CoreSimulator/Devices/$DEVICEGUID/data/Containers/Data/Application/$APPLICATIONGUID/Documents
MyDocuments: /Users/$USER/Library/Developer/CoreSimulator/Devices/$DEVICEGUID/data/Containers/Data/Application/$APPLICATIONGUID/Documents
Desktop: /Users/$USER/Library/Developer/CoreSimulator/Devices/$DEVICEGUID/data/Containers/Data/Application/$APPLICATIONGUID/Documents/Desktop
MyDocuments: /Users/$USER/Library/Developer/CoreSimulator/Devices/$DEVICEGUID/data/Containers/Data/Application/$APPLICATIONGUID/Documents
Startup: 
Recent: 
SendTo: 
StartMenu: 
MyMusic: /Users/$USER/Library/Developer/CoreSimulator/Devices/$DEVICEGUID/data/Containers/Data/Application/$APPLICATIONGUID/Documents/Music
MyVideos: /Users/$USER/Library/Developer/CoreSimulator/Devices/$DEVICEGUID/data/Containers/Data/Application/$APPLICATIONGUID/Documents/Videos
MyComputer: 
NetworkShortcuts: 
Fonts: /Users/$USER/Library/Developer/CoreSimulator/Devices/$DEVICEGUID/data/Containers/Data/Application/$APPLICATIONGUID/Documents/.fonts
Templates: /Users/$USER/Library/Developer/CoreSimulator/Devices/$DEVICEGUID/data/Containers/Data/Application/$APPLICATIONGUID/Documents/Templates
CommonStartMenu: 
CommonPrograms: 
CommonStartup: 
CommonDesktopDirectory: 
PrinterShortcuts: 
InternetCache: /Users/$USER/Library/Developer/CoreSimulator/Devices/$DEVICEGUID/data/Containers/Data/Application/$APPLICATIONGUID/Library/Caches
Cookies: 
History: 
Windows: 
MyPictures: /Users/$USER/Library/Developer/CoreSimulator/Devices/$DEVICEGUID/data/Containers/Data/Application/$APPLICATIONGUID/Documents/Pictures
UserProfile: /Users/$USER/Library/Developer/CoreSimulator/Devices/$DEVICEGUID/data/Containers/Data/Application/$APPLICATIONGUID
SystemX86: 
ProgramFilesX86: 
CommonProgramFiles: 
CommonProgramFilesX86: 
CommonTemplates: /usr/share/templates
CommonDocuments: 
CommonAdminTools: 
AdminTools: 
CommonMusic: 
CommonPictures: 
CommonVideos: 
Resources: /Users/$USER/Library/Developer/CoreSimulator/Devices/$DEVICEGUID/data/Containers/Data/Application/$APPLICATIONGUID/Library
LocalizedResources: 
CommonOemLinks: 
CDBurning: 

其中 $DEVICEGUID 是模拟器 GUID(取决于所选模拟器)

使用 Xamarin 7.2 在 ipad 10.3 上输出

SpecialFolder.MyDocuments: /var/mobile/Containers/Data/Application/$APPLICATIONGUID/Documents

使用 Xamarin 16.4 在 ipad 13.3 上输出

SpecialFolder.MyDocuments: /var/mobile/Containers/Data/Application/$APPLICATIONGUID/Documents
SpecialFolder.UserProfile: /private/var/mobile/Containers/Data/Application/$APPLICATIONGUID/Documents

使用 .net core 3.1 在 Windows 10 上输出

SpecialFolder.MyDocuments: C:\Users\$USER\Documents

在 Ubuntu 18.04 上使用 .net core 3.1 输出

SpecialFolder.MyDocuments: /home/$USER

使用 .net core 3.1 在 MacOS Catalina 上输出

SpecialFolder.Desktop: /Users/$USER/Desktop
SpecialFolder.Programs: 
SpecialFolder.MyDocuments: /Users/$USER
SpecialFolder.Favorites: /Users/$USER/Library/Favorites
SpecialFolder.Startup: 
SpecialFolder.Recent: 
SpecialFolder.SendTo: 
SpecialFolder.StartMenu: 
SpecialFolder.MyMusic: /Users/$USER/Music
SpecialFolder.MyVideos: 
SpecialFolder.DesktopDirectory: /Users/$USER/Desktop
SpecialFolder.MyComputer: 
SpecialFolder.NetworkShortcuts: 
SpecialFolder.Fonts: /Users/$USER/Library/Fonts
SpecialFolder.Templates: 
SpecialFolder.CommonStartMenu: 
SpecialFolder.CommonPrograms: 
SpecialFolder.CommonStartup: 
SpecialFolder.CommonDesktopDirectory: 
SpecialFolder.ApplicationData: /Users/$USER/.config
SpecialFolder.PrinterShortcuts: 
SpecialFolder.LocalApplicationData: /Users/$USER/.local/share
SpecialFolder.InternetCache: /Users/$USER/Library/Caches
SpecialFolder.Cookies: 
SpecialFolder.History: 
SpecialFolder.CommonApplicationData: /usr/share
SpecialFolder.Windows: 
SpecialFolder.System: /System
SpecialFolder.ProgramFiles: /Applications
SpecialFolder.MyPictures: /Users/$USER/Pictures
SpecialFolder.UserProfile: /Users/$USER
SpecialFolder.SystemX86: 
SpecialFolder.ProgramFilesX86: 
SpecialFolder.CommonProgramFiles: 
SpecialFolder.CommonProgramFilesX86: 
SpecialFolder.CommonTemplates: 
SpecialFolder.CommonDocuments: 
SpecialFolder.CommonAdminTools: 
SpecialFolder.AdminTools: 
SpecialFolder.CommonMusic: 
SpecialFolder.CommonPictures: 
SpecialFolder.CommonVideos: 
SpecialFolder.Resources: 
SpecialFolder.LocalizedResources: 
SpecialFolder.CommonOemLinks: 
SpecialFolder.CDBurning:

Snap 包的输出 - Core 18 使用 .net core 3.1

Desktop: 
Programs: 
MyDocuments: /home/$USER/snap/$APPNAME/x$VERSIONNUMBER
MyDocuments: /home/$USER/snap/$APPNAME/x$VERSIONNUMBER
Favorites: 
Startup: 
Recent: 
SendTo: 
StartMenu: 
MyMusic: 
MyVideos: 
DesktopDirectory: 
MyComputer: 
NetworkShortcuts: 
Fonts: 
Templates: 
CommonStartMenu: 
CommonPrograms: 
CommonStartup: 
CommonDesktopDirectory: 
ApplicationData: /home/$USER/snap/$APPNAME/x$VERSIONNUMBER/.config
PrinterShortcuts: 
LocalApplicationData: 
InternetCache: 
Cookies: 
History: 
CommonApplicationData: /usr/share
Windows: 
System: 
ProgramFiles: 
MyPictures: 
UserProfile: /home/$USER/snap/$APPNAME/x$VERSIONNUMBER
SystemX86: 
ProgramFilesX86: 
CommonProgramFiles: 
CommonProgramFilesX86: 
CommonTemplates: 
CommonDocuments: 
CommonAdminTools: 
AdminTools: 
CommonMusic: 
CommonPictures: 
CommonVideos: 
Resources: 
LocalizedResources: 
CommonOemLinks: 
CDBurning:

(不是我发现如果存在快照环境,如果/home/$USER/snap/$APPNAME/x$VERSION/.local/share 存在则LocalApplicationData 将返回该路径。但是,如果该路径不存在,则返回空字符串。

【讨论】:

    【解决方案3】:

    Windows 10 上的输出

    Fonts: C:\Windows\Fonts
    CommonStartMenu: C:\ProgramData\Microsoft\Windows\Start Menu
    CommonPrograms: C:\ProgramData\Microsoft\Windows\Start Menu\Programs
    CommonStartup: C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
    CommonDesktopDirectory: C:\Users\Public\Desktop
    CommonApplicationData: C:\ProgramData
    Windows: C:\Windows
    System: C:\Windows\system32
    ProgramFiles: C:\Program Files (x86)
    SystemX86: C:\Windows\SysWOW64
    ProgramFilesX86: C:\Program Files (x86)
    CommonProgramFiles: C:\Program Files (x86)\Common Files
    CommonProgramFilesX86: C:\Program Files (x86)\Common Files
    CommonTemplates: C:\ProgramData\Microsoft\Windows\Templates
    CommonDocuments: C:\Users\Public\Documents
    CommonAdminTools: C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Administrative Tools
    CommonMusic: C:\Users\Public\Music
    CommonPictures: C:\Users\Public\Pictures
    CommonVideos: C:\Users\Public\Videos
    Resources: C:\Windows\resources
    LocalizedResources:
    CommonOemLinks:
    

    如果您想自己记录代码片段

    foreach(Environment.SpecialFolder f in Enum.GetValues(typeof(Environment.SpecialFolder)))
    {
        string commonAppData = Environment.GetFolderPath(f);
        Console.WriteLine("{0}: {1}", f, commonAppData);
    }
    Console.ReadLine();
    

    【讨论】:

    • 这些值对 Windows 10 S 有效吗?
    【解决方案4】:

    Windows 7(64 位)上的输出

    SpecialFolder.CommonApplicationData: C:\ProgramData 
    SpecialFolder.CommonDesktopDirectory: C:\Users\Public\Desktop
    SpecialFolder.CommonStartMenu: C:\ProgramData\Microsoft\Windows\Start Menu
    SpecialFolder.CommonPrograms: C:\ProgramData\Microsoft\Windows\Start Menu\Programs
    SpecialFolder.CommonProgramFiles: C:\Program Files\Common Files
    SpecialFolder.CommonProgramFilesX86: C:\Program Files (x86)\Common Files
    SpecialFolder.CommonStartup: C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
    SpecialFolder.ProgramFiles: C:\Program Files
    SpecialFolder.ProgramFilesX86: C:\Program Files (x86)
    SpecialFolder.System: C:\Windows\system32
    SpecialFolder.SystemX86: C:\Windows\SysWOW64
    

    Windows XP 上的输出

    SpecialFolder.CommonApplicationData: C:\Documents and Settings\All Users\Application Data
    SpecialFolder.CommonDesktopDirectory: C:\Documents and Settings\All Users\Desktop
    SpecialFolder.CommonPrograms: C:\Documents and Settings\All Users\Start Menu\Programs
    SpecialFolder.CommonProgramFiles: C:\Program Files\Common Files
    SpecialFolder.CommonProgramFilesX86:
    SpecialFolder.CommonStartMenu: C:\Documents and Settings\All Users\Start Menu
    SpecialFolder.CommonStartup: C:\Documents and Settings\All Users\Start Menu\Programs\Startup
    SpecialFolder.ProgramFiles: C:\Program Files
    SpecialFolder.ProgramFilesX86:
    SpecialFolder.System: C:\WINDOWS\system32
    SpecialFolder.SystemX86: C:\WINDOWS\system32
    

    【讨论】:

      【解决方案5】:

      我一直在寻找 macOS 的列表,但一无所获,也许这对某人有帮助。

      使用 net5.0 在 macOS Catalina (10.15.7) 上输出

      # SpecialFolders (Only with value)
      SpecialFolder.ApplicationData: /Users/$USER/.config
      SpecialFolder.CommonApplicationData: /usr/share
      SpecialFolder.Desktop: /Users/$USER/Desktop
      SpecialFolder.DesktopDirectory: /Users/$USER/Desktop
      SpecialFolder.Favorites: /Users/$USER/Library/Favorites
      SpecialFolder.Fonts: /Users/$USER/Library/Fonts
      SpecialFolder.InternetCache: /Users/$USER/Library/Caches
      SpecialFolder.LocalApplicationData: /Users/$USER/.local/share
      SpecialFolder.MyDocuments: /Users/$USER
      SpecialFolder.MyMusic: /Users/$USER/Music
      SpecialFolder.MyPictures: /Users/$USER/Pictures
      SpecialFolder.ProgramFiles: /Applications
      SpecialFolder.System: /System
      SpecialFolder.UserProfile: /Users/$USER
      
      # SpecialFolders (All)
      SpecialFolder.AdminTools: 
      SpecialFolder.ApplicationData: /Users/$USER/.config
      SpecialFolder.CDBurning: 
      SpecialFolder.CommonAdminTools: 
      SpecialFolder.CommonApplicationData: /usr/share
      SpecialFolder.CommonDesktopDirectory: 
      SpecialFolder.CommonDocuments: 
      SpecialFolder.CommonMusic: 
      SpecialFolder.CommonOemLinks: 
      SpecialFolder.CommonPictures: 
      SpecialFolder.CommonProgramFiles: 
      SpecialFolder.CommonProgramFilesX86: 
      SpecialFolder.CommonPrograms: 
      SpecialFolder.CommonStartMenu: 
      SpecialFolder.CommonStartup: 
      SpecialFolder.CommonTemplates: 
      SpecialFolder.CommonVideos: 
      SpecialFolder.Cookies: 
      SpecialFolder.Desktop: /Users/$USER/Desktop
      SpecialFolder.DesktopDirectory: /Users/$USER/Desktop
      SpecialFolder.Favorites: /Users/$USER/Library/Favorites
      SpecialFolder.Fonts: /Users/$USER/Library/Fonts
      SpecialFolder.History: 
      SpecialFolder.InternetCache: /Users/$USER/Library/Caches
      SpecialFolder.LocalApplicationData: /Users/$USER/.local/share
      SpecialFolder.LocalizedResources: 
      SpecialFolder.MyComputer: 
      SpecialFolder.MyDocuments: /Users/$USER
      SpecialFolder.MyMusic: /Users/$USER/Music
      SpecialFolder.MyPictures: /Users/$USER/Pictures
      SpecialFolder.MyVideos: 
      SpecialFolder.NetworkShortcuts: 
      SpecialFolder.PrinterShortcuts: 
      SpecialFolder.ProgramFiles: /Applications
      SpecialFolder.ProgramFilesX86: 
      SpecialFolder.Programs: 
      SpecialFolder.Recent: 
      SpecialFolder.Resources: 
      SpecialFolder.SendTo: 
      SpecialFolder.StartMenu: 
      SpecialFolder.Startup: 
      SpecialFolder.System: /System
      SpecialFolder.SystemX86: 
      SpecialFolder.Templates: 
      SpecialFolder.UserProfile: /Users/$USER
      SpecialFolder.Windows: 
      

      我已将我的用户名替换为 $USER。

      来自pogosama 的代码片段。

      foreach(Environment.SpecialFolder f in Enum.GetValues(typeof(Environment.SpecialFolder)))
      {
          string commonAppData = Environment.GetFolderPath(f);
          Console.WriteLine("{0}: {1}", f, commonAppData);
      }
      Console.ReadLine();
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-10-25
        • 2013-08-26
        • 1970-01-01
        • 2013-11-15
        • 2012-09-09
        • 1970-01-01
        • 1970-01-01
        • 2010-11-09
        相关资源
        最近更新 更多