C++获得系统路径
来源:互联网 发布:淘宝达人后台v任务报名 编辑:程序博客网 时间:2024/05/18 09:13
源代码:
- #include <Shlobj.h>
- #include <stdio.h>
- #include <locale.h>
- int main()
- {
- setlocale(LC_ALL, "chs");
- TCHAR szPath[MAX_PATH];
- int CSIDL[] = {
- CSIDL_ADMINTOOLS, CSIDL_APPDATA, CSIDL_CDBURN_AREA, CSIDL_COMMON_ADMINTOOLS, CSIDL_COMMON_APPDATA,
- CSIDL_COMMON_DESKTOPDIRECTORY, CSIDL_COMMON_DOCUMENTS, CSIDL_COMMON_FAVORITES, CSIDL_COMMON_MUSIC,
- CSIDL_COMMON_PICTURES, CSIDL_COMMON_PROGRAMS, CSIDL_COMMON_STARTMENU, CSIDL_COMMON_STARTUP,
- CSIDL_COMMON_TEMPLATES, CSIDL_COMMON_VIDEO, CSIDL_COOKIES, CSIDL_FAVORITES,
- CSIDL_HISTORY, CSIDL_INTERNET_CACHE, CSIDL_LOCAL_APPDATA, CSIDL_MYDOCUMENTS,
- CSIDL_MYMUSIC, CSIDL_MYPICTURES, CSIDL_MYVIDEO, CSIDL_PROFILE, CSIDL_PROGRAM_FILES,
- CSIDL_PROGRAM_FILES_COMMON, CSIDL_PROGRAMS, CSIDL_RECENT, CSIDL_SENDTO,
- CSIDL_STARTMENU, CSIDL_STARTUP, CSIDL_SYSTEM, CSIDL_TEMPLATES, CSIDL_WINDOWS,
- 0
- };
- for (int i=0;CSIDL[i];i++) {
- if (SUCCEEDED(SHGetFolderPath(NULL, CSIDL[i], NULL, SHGFP_TYPE_CURRENT, szPath))) {
- wprintf(L"%d, %s\n", i, szPath);
- }
- }
- return 0;
- }
在XP上,用VS2010编译通过,如果是win7或者更高版本,应该用
- HRESULT SHGetKnownFolderPath(
- _In_ REFKNOWNFOLDERID rfid,
- _In_ DWORD dwFlags,
- _In_opt_ HANDLE hToken,
- _Out_ PWSTR *ppszPath
- );
结果:
- 0, C:\Documents and Settings\Administrator\「开始」菜单\程序\管理工具
- 1, C:\Documents and Settings\Administrator\Application Data
- 2, C:\Documents and Settings\Administrator\Local Settings\Application Data\Microsoft\CD Burning
- 3, C:\Documents and Settings\All Users\「开始」菜单\程序\管理工具
- 4, C:\Documents and Settings\All Users\Application Data
- 5, C:\Documents and Settings\All Users\桌面
- 6, C:\Documents and Settings\All Users\Documents
- 7, C:\Documents and Settings\All Users\Favorites
- 8, C:\Documents and Settings\All Users\Documents\My Music
- 9, C:\Documents and Settings\All Users\Documents\My Pictures
- 10, C:\Documents and Settings\All Users\「开始」菜单\程序
- 11, C:\Documents and Settings\All Users\「开始」菜单
- 12, C:\Documents and Settings\All Users\「开始」菜单\程序\启动
- 13, C:\Documents and Settings\All Users\Templates
- 14, C:\Documents and Settings\All Users\Documents\My Videos
- 15, D:\My Documents\Cookies
- 16, D:\My Documents\Favorites
- 17, C:\Documents and Settings\Administrator\Local Settings\History
- 18, C:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files
- 19, C:\Documents and Settings\Administrator\Local Settings\Application Data
- 20, D:\My Documents
- 21, D:\My Documents\My Music
- 22, D:\My Documents\My Pictures
- 23, D:\My Documents\My Videos
- 24, C:\Documents and Settings\Administrator
- 25, C:\Program Files
- 26, C:\Program Files\Common Files
- 27, C:\Documents and Settings\Administrator\「开始」菜单\程序
- 28, C:\Documents and Settings\Administrator\Recent
- 29, C:\Documents and Settings\Administrator\SendTo
- 30, C:\Documents and Settings\Administrator\「开始」菜单
- 31, C:\Documents and Settings\Administrator\「开始」菜单\程序\启动
- 32, C:\WINDOWS\system32
- 33, C:\Documents and Settings\Administrator\Templates
- 34, C:\WINDOWS
转自:http://blog.csdn.net/feier7501/article/details/11182243
0 0
- C#获得系统路径
- C++获得系统路径
- C++获得系统路径
- C++获得系统路径
- 获得系统路径方法
- 获得各种系统路径
- java中获得系统路径
- java中获得系统路径
- java中获得系统路径
- java中获得系统路径
- VC获得系统文件夹路径
- 如何获得系统特殊路径
- 获得系统路径的方法
- C#----获得应用程序运行路径
- 【C语言】【unix c】获得当前路径
- java中如何获得系统路径!
- java中如何获得系统路径
- 获得系统特定目录的路径
- tomcat5.5 虚拟目录路径配置出现404错误
- 数据库的不同启动方式
- 操作系统 -文件管理
- LA 3487 Duopoly 最小割
- DropDownList的前后台定位到对应的项目
- C++获得系统路径
- Android05_下拉滚动事件OnScrollListener
- vs中,使用到svn,一些操作点记录。
- MySQL大小写问题
- 小规模电商如何选择ERP系统
- hibernate注解错误解决
- 最短路径之Floyd算法
- 知乎、豆瓣、果壳有什么相似之处?
- When Linux Runs Out of Memory