C语言获取文件夹地址的方法
2009-04-28 00:40
113 查看
#include <stdio.h> #include <stdlib.h> #include <shlobj.h> void main(int argc, char* argv[]) { TCHAR szPath[MAX_PATH]; if(SUCCEEDED(SHGetFolderPath(NULL, CSIDL_COMMON_ADMINTOOLS|CSIDL_FLAG_CREATE, NULL, 0, szPath))) { printf(szPath); printf("/n"); } } //*************************************************************************** //CSIDL_FLAG_CREATE($8000) // windows 2000:如果这个CSIDL所引用的文件夹不存在,则创建这个文件夹!. // CSIDL_FLAG_DONT_VERIFY($4000) // WINDOWS 2000: 无论这个CSIDL所引用的文件夹是否存在都使用它! //CSIDL_ADMINTOOLS($30) // 表示当前用户的“管理工具”系统文件夹 //CSIDL_ALTSTARTUP($h1D) // 不详 //CSIDL_APPDATA($1A) // 表示当前用户的特定的应用程序数据存储文件夹,例如:C:/Documents and Settings/username/Application Data //CSIDL_BITBUCKET($A) // 表示回收站 //CSIDL_COMMON_ADMINTOOLS($2F) // 表示所有用户的“管理工具”系统文件夹 //CSIDL_COMMON_ALTSTARTUP($1D) // 表示所有用户的 (只支持WINDOWS NT 系统) //CSIDL_COMMON_APPDATA($23) // 表示所有用户的特定的应用程序数据存储文件夹,例如:C:/Documents and Settings/All Users/Application Data //CSIDL_COMMON_DESKTOPDIRECTORY($19) // 表示所有用户的“桌面”文件夹,例如:C:/Documents and Settings/All Users/Desktop。 //CSIDL_COMMON_DOCUMENTS($2E) // 表示所有用户的“我的文档”文件夹,例如:C:/Documents and Settings/All Users/Documents //CSIDL_COMMON_FAVORITES($1F) // 表示所有用户的“我的收藏夹”文件夹。 //CSIDL_COMMON_PROGRAMS($17) // 表示所有用户的“程序”文件夹,例如:C:/Documents and Settings/All Users/Start Menu/Programs //CSIDL_COMMON_STARTMENU($16) // 表示所有用户的“开始菜单”文件夹,例如:C:/Documents and Settings/All Users/Start Menu //CSIDL_COMMON_STARTUP($18) // 表示所有用户的“启动”文件夹,例如:C:/Documents and Settings/All Users/Start Menu/Programs/Startup //CSIDL_COMMON_TEMPLATES($2D) // 表示所有用户的“模块”文件夹,例如:C:/Documents and Settings/All Users/Templates //CSIDL_CONTROLS($3) // 表示“控制面板”文件夹 //CSIDL_COOKIES($21) // 表示当前用户Internet Explorer的cookie 文件夹,例如:C:/Documents and Settings/username/Cookies //CSIDL_DESKTOP($0) // 表示“桌面”虚拟文件夹,包含了计算机中的所有内容 //CSIDL_DESKTOPDIRECTORY($10) // 表示当前用户的“桌面”文件夹,例如:C:/Documents and Settings/username/Desktop //CSIDL_DRIVES($11) // 表示“我的电脑”虚拟文件夹,包含了计算机中所有的驱动器 //CSIDL_FAVORITES($6) // 表示当前用户的“收藏夹”文件夹,例如:C:/Documents and Settings/username/Favorites //CSIDL_FONTS($14) // 表示“系统字体”文件夹,例如:C:/WINNT/Fonts //CSIDL_HISTORY($22) // 表示Inernet Explorer的“历史记录”文件夹 //CSIDL_INTERNET($1) // 表示Internet的这个虚拟文件夹 //CSIDL_INTERNET_CACHE($20) // 表示当前用户的Internet Explorer的"Cache"文件夹,例如:C:/Documents and Settings/username/Temporary Internet Files //CSIDL_LOCAL_APPDATA($1C) // 表示当前用户的应用程序数据文件夹,例如:C:/Documents and Settings/username/Local Settings/Application Data //CSIDL_MYMUSIC // 表示当前用户存储音乐文件的文件夹,例如:C:/Documents and Settings/User/My Documents/My Music //CSIDL_MYPICTURES($27) // 表示当前用户存储图像文件的文件夹,例如:C:/Documents and Settings/username/My Documents/My Pictures //CSIDL_NETHOOD($13) // 表示当前用户存在的网络连接的文件夹,例如:C:/Documents and Settings/username/NetHood //CSIDL_NETWORK($12) // 表示“网上邻居”这个虚拟文件夹 //CSIDL_PERSONAL($5) // 表示当前用户的“我的文档”文件夹,例如:C:/Documents and Settings/username/My Documents //CSIDL_PRINTERS($4) // 指向“打印机”这个虚拟文件夹 //CSIDL_PRINTHOOD($1B) // 表示当前用户存在的网络打印机的虚拟文件夹,例如:C:/Documents and Settings/username/PrintHood //CSIDL_PROFILE($28) // 表示当前用用户配置文件的文件夹 //CSIDL_PROGRAM_FILES($26) // 表示程序文件的文件夹,例如:C:/Program Files //CSIDL_PROGRAM_FILES_COMMON($2B) // 表示系统程序共用组件文件夹,例如:C:/Program Files/Common //CSIDL_PROGRAMS($2) // 表示当前用户的“程序”菜单文件夹,例如:C:/Documents and Settings/username/Start Menu/Programs //CSIDL_RECENT($8) // 表示当前用户的“文档”菜单文件夹,例如:C:/Documents and Settings/username/Start Menu/Programs //CSIDL_SENDTO($9) // 表示当前用户的“发送到”文件夹,例如:C:/Documents and Settings/username/SendTo //CSIDL_STARTMENU($B) // 表示当前用户的“开始”菜单文件夹,例如:C:/Documents and Settings/username/Start Menu //CSIDL_STARTUP($7) // 表示当前用户的“启动”菜单文件夹,例如:C:/Documents and Settings/username/Start Menu/Programs/Startup //CSIDL_SYSTEM($25) // 表示WINDOWS系统的系统文件夹,例如:C:/WINNT/SYSTEM32 //CSIDL_TEMPLATES($15) // 表示的是系统中存储文档模块的文件夹 //CSIDL_WINDOWS($24) // 表示的是系统中Windows目录的文件珍,例如:C:/WINNT //***************************************************************************/ CSIDL_PERSONAL : void main(int argc, char* argv[]) { TCHAR szPath[MAX_PATH]; if(SUCCEEDED(SHGetFolderPath(NULL, CSIDL_PERSONAL|CSIDL_FLAG_CREATE, NULL, 0, szPath))) { printf(szPath); printf("/n"); } } // GetSystemDirectory 获取系统路径
相关文章推荐
- 使用C语言获取文件夹地址的方法
- 使用C语言获取文件夹地址的方法收藏
- Objective-c语言_用字符串方法和数组如何获取物理IP地址
- C语言数组地址【元素地址及数组地址获取方法区别】
- JS获取地址栏参数的方法【推荐】
- 使用正则表达式写一个网页爬虫案例获取指定文档中的邮件地址保存到自己指定的文件夹中
- 获取mac地址又一方法
- 用JS获取地址栏参数的方法
- 用JS 上级地址处理获取及处理方法
- 用JS获取地址栏参数的方法(超级简单)
- VBA获取系统环境变量及特殊文件夹的各种代码与方法
- phpcms v9多文件上传字段获取文件url路径地址的方法
- 获取函数的地址(三种方法,分别是@,Addr,MethodAddress)
- PHP 获取客户端 IP 地址的方法实例代码
- 获取最新ADT下载地址的方法
- python 获取本机ip地址的两个方法
- 用JS获取地址栏参数的方法(超级简单)
- 可能最详细的教程,新手如何获取Zcash钱包(ZEC)官方地址的方法
- c语言 获取结构体成员偏移量方法
- ASP.NET 取得 Request URL 的各个部分和通过ASP.NET获取URL地址的方法