博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
系统特殊路径一览
阅读量:4538 次
发布时间:2019-06-08

本文共 2732 字,大约阅读时间需要 9 分钟。

  要用到系统里面的特殊路径,显然直接写“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 Documents\My Music\10 CSIDL_Users_NetHood = 19 //当前用户\NetHood11 CSIDL_Users_Templates = 21 //当前用户\Templates12 CSIDL_Users_AppData = 26 //当前用户\Application Data\13 CSIDL_Users_PrintHood = 27 //当前用户\PrintHood\14 CSIDL_Users_Local_AppData = 28 //当前用户\Local Settings\Application Data\15 CSIDL_Users_Temp = 32 //当前用户\Local Settings\Temporary Internet Files\16 CSIDL_Users_Cookies = 33 //当前用户\Cookies\17 CSIDL_Users_History = 34 //当前用户\Local Settings\History\18 CSIDL_Users_Pictures = 39 //当前用户\My Documents\My Pictures\19 CSIDL_Users = 40 //当前用户\20 CSIDL_Users_gl = 48 //当前用户\「开始」菜单\程序\管理工具\21 CSIDL_Users_CDBurning = 59 //当前用户\Local Settings\Application Data\Microsoft\CD 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 Users\Favorites\(收藏夹)28 CSIDL_AllUsers_Templates = 45 //All Users\Templates\29 CSIDL_AllUsers_Documents = 46 //All Users\Documents\30 CSIDL_AllUsers_gl = 47 //All Users\「开始」菜单\程序\管理工具\31 CSIDL_AllUsers_Music = 53 //All Users\Documents\My Music\32 CSIDL_AllUsers_Pictures = 54 //All Users\Documents\My Pictures\33 CSIDL_AllUsers_Videos = 55 //All Users\Documents\My Videos\34 CSIDL_AllUsers_AppData = 35 //All Users\Application Data\35 36 CSIDL_WinDows = 36 //系统安装路径C:\WINDOWS\37 CSIDL_WinSystem = 37 //系统文件夹C:\WINDOWS\system32\38 CSIDL_ProgramFiles = 38 //应用程序安装文件夹C:\Program Files\39 CSIDL__ProgramFiles_CommonFiles = 43 //C:\Program Files\Common Files\40 CSIDL_WIN_Resources = 56 //C:\WINDOWS\Resources\41 CSIDL_font = 20 //字体文件夹C:\WINDOWS\Fonts\

 

转载于:https://www.cnblogs.com/HopeGi/p/3462116.html

你可能感兴趣的文章
ELK-Elasticsearch安装
查看>>
[Win8.1系统]双系统
查看>>
HDU 3899 树形DP
查看>>
获取当前页面url信息
查看>>
Java容器类源码分析前言之集合框架结构(基于JDK8)
查看>>
linux下C/C++程序的内存布局
查看>>
单词计数问题
查看>>
php 魔术方法 __autoload()
查看>>
js div拖动动画运行轨迹效果
查看>>
Recipe 1.9. Processing a String One Word at a Time
查看>>
Linux 下查看系统是32位 还是64 位的方法
查看>>
MySQL 引擎 和 InnoDB并发控制 简介
查看>>
Dave Python 练习二
查看>>
第二章 第五节 获取帮助
查看>>
关于源代码及其管理工具的总结
查看>>
此文对你人生会有莫大好处的,建议永久保存 2013-07-26 11:04 476人阅读 评论(0) ...
查看>>
JQuery怎样返回前一页
查看>>
Best Time to Buy and Sell Stock
查看>>
Web服务器的原理
查看>>
记录ok6410 jlink 命令行调试uboot
查看>>