• 系统特殊路径一览


      要用到系统里面的特殊路径,显然直接写“C:Document and Setting”不现实,那还是用回.NET 类库里面提供的比较好。要获取到桌面文件夹的路径,上网找的有种办法是

    Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)

    这个是感觉是最保险的,毕竟是.NET提供的。可是获取到的东西并不是我想要的,上面获取到的是当前用户的桌面路径,但是并非公共用户的桌面路径。在网上看到一种用注册表获取的方式,没尝试过,但眼看也只是获取到当前用户而已,而且注册表有个不太好的地方就是在Win8下安全措施下,单纯运行程序是不能访问注册表的,非得要“以管理员身份运行”才行。还有一种方式就是我现在使用的方式,就是使用系统的API,要声明的方法如下

    [DllImport("shfolder.dll", CharSet = CharSet.Auto)]
     private static extern int SHGetFolderPath(IntPtr hwndOwner, int nFolder, IntPtr hToken, int dwFlags, StringBuilder lpszPath);

    其中第二个参数就是各种特殊文件夹的标识值:CSIDL,用这方法主要也是要找出文件夹的CSIDL。本文的主要目的只是罗列各种文件夹的CSIDL而已

     1 CSIDL_Users_FAVORITES = 6 //当前用户收藏夹
     2 CSIDL_Users_DESKTOPDIRECTORY = 16 //当前用户桌面
     3 CSIDL_Users_STARTMENU = 11 //当前用户开始菜单
     4 CSIDL_Users_STARTMENU_cx = 2 //当前用户开始-程序
     5 CSIDL_Users_MyDocuments = 5 //当前用户我的文档
     6 CSIDL_Users_STARTMENU_a = 7 //当前用户开始-程序-启动
     7 CSIDL_Users_Recent = 8 //当前用户//Recent
     8 CSIDL_Users_SendTo = 9 //当前用户SendTo
     9 CSIDL_Users_MyMusic = 13 //当前用户My DocumentsMy Music
    10 CSIDL_Users_NetHood = 19 //当前用户NetHood
    11 CSIDL_Users_Templates = 21 //当前用户Templates
    12 CSIDL_Users_AppData = 26 //当前用户Application Data
    13 CSIDL_Users_PrintHood = 27 //当前用户PrintHood
    14 CSIDL_Users_Local_AppData = 28 //当前用户Local SettingsApplication Data
    15 CSIDL_Users_Temp = 32 //当前用户Local SettingsTemporary Internet Files
    16 CSIDL_Users_Cookies = 33 //当前用户Cookies
    17 CSIDL_Users_History = 34 //当前用户Local SettingsHistory
    18 CSIDL_Users_Pictures = 39 //当前用户My DocumentsMy Pictures
    19 CSIDL_Users = 40 //当前用户
    20 CSIDL_Users_gl = 48 //当前用户「开始」菜单程序管理工具
    21 CSIDL_Users_CDBurning = 59 //当前用户Local SettingsApplication DataMicrosoftCD Burning
    22 
    23 CSIDL_AllUsers_STARTMENU = 22 //All Users「开始」菜单
    24 CSIDL_AllUsers_STARTMENU_cx = 23 //All Users「开始」菜单程序
    25 CSIDL_AllUsers_STARTMENU_j = 24 //All Users「开始」菜单程序启动
    26 CSIDL_AllUsers_DESKTOPDIRECTORY = 25 //All Users桌面
    27 CSIDL_AllUsers_FAVORITES = 31 //All UsersFavorites(收藏夹)
    28 CSIDL_AllUsers_Templates = 45 //All UsersTemplates
    29 CSIDL_AllUsers_Documents = 46 //All UsersDocuments
    30 CSIDL_AllUsers_gl = 47 //All Users「开始」菜单程序管理工具
    31 CSIDL_AllUsers_Music = 53 //All UsersDocumentsMy Music
    32 CSIDL_AllUsers_Pictures = 54 //All UsersDocumentsMy Pictures
    33 CSIDL_AllUsers_Videos = 55 //All UsersDocumentsMy Videos
    34 CSIDL_AllUsers_AppData = 35 //All UsersApplication Data
    35 
    36 CSIDL_WinDows = 36 //系统安装路径C:WINDOWS
    37 CSIDL_WinSystem = 37 //系统文件夹C:WINDOWSsystem32
    38 CSIDL_ProgramFiles = 38 //应用程序安装文件夹C:Program Files
    39 CSIDL__ProgramFiles_CommonFiles = 43 //C:Program FilesCommon Files
    40 CSIDL_WIN_Resources = 56 //C:WINDOWSResources
    41 CSIDL_font = 20 //字体文件夹C:WINDOWSFonts
  • 相关阅读:
    4815 江哥的dp题a
    CON1023 明明的计划
    5200 fqy的难题----2的疯狂幂
    [SCOI2005] 最大子矩阵
    1457 又是求和?
    2064 最小平方数
    vijos P1459车展
    1366 xth 的第 12 枚硬币
    1360 xth 的玫瑰花
    3223: Tyvj 1729 文艺平衡树
  • 原文地址:https://www.cnblogs.com/HopeGi/p/3462116.html
Copyright © 2020-2023  润新知