文章目录
1.常用宏介绍
宏介绍CSIDL_ADMINTOOLS、CSIDL_COMMON_ADMINTOOLS管理工具CSIDL_ALTSTARTUP、 CSIDL_COMMON_STARTUP、CSIDL_STARTUP程序 - 启动CSIDL_APPDATAAppDataCSIDL_CDBURN_AREA临时刻录文件夹CSIDL_COMMON_TEMPLATES、CSIDL_TEMPLATESTemplatesCSIDL_COMMON_APPDATAProgramDataCSIDL_COMMON_DESKTOPDIRECTORY、CSIDL_DESKTOP、CSIDL_DESKTOPDIRECTORY桌面CSIDL_COMMON_DOCUMENTS、CSIDL_MYDOCUMENTS、CSIDL_PERSONAL文档CSIDL_COMMON_FAVORITES、CSIDL_FAVORITES收藏夹CSIDL_COMMON_MUSIC、CSIDL_MYMUSIC音乐CSIDL_COMMON_PICTURES、CSIDL_MYPICTURES图片CSIDL_COMMON_PROGRAMS、CSIDL_PROGRAMS开始菜单 - 程序CSIDL_COMMON_STARTMENU、CSIDL_STARTMENU开始菜单CSIDL_COMMON_VIDEO 、CSIDL_MYVIDEO视频CSIDL_COOKIESINetCookiesCSIDL_FONTS字体CSIDL_HISTORY历史CSIDL_INTERNET_CACHEINetCacheCSIDL_LOCAL_APPDATAAppData/LocalCSIDL_NETHOODNetwork ShortcutsCSIDL_PRINTHOODPrinter ShortcutsCSIDL_PROFILE当前用户(Administrator)CSIDL_PROGRAM_FILES 、CSIDL_PROGRAM_FILESX86Program FilesCSIDL_PROGRAM_FILES_COMMON、CSIDL_PROGRAM_FILES_COMMONX86Common FilesCSIDL_RECENT最近使用的项目CSIDL_RESOURCESResourcesCSIDL_SENDTO发送到CSIDL_SYSTEMSystem32CSIDL_SYSTEMX86SysWOW64CSIDL_WINDOWSWindows
2.将宏转为文件夹
- 1.常用宏介绍
- 2.将宏转为文件夹
- 3.获取临时文件夹
- 4.作者答疑
可以将下面CSIDL 宏换成其它宏,用于获取其它宏参数。
#include
#include
#pragma comment(lib, "shell32.lib")
std::string GetDesktopFolder()
{
char path[255] = {0};
SHGetSpecialFolderPath(
NULL, // 保留
path, // 接受文件路径的字符串指针
CSIDL_DESKTOPDIRECTORY, // CSIDL 宏
FALSE // 如果文件夹不存在,则不创建文件夹
);
std::string rlt = path;
return rlt;
}
3.获取临时文件夹
临时文件夹内存放系统和应用程序临时使用的文件数据。
#include
std::string GetDesktopFolder()
{
char strTmpDir[MAX_PATH] = { 0 };
GetTempPathA(MAX_PATH, strTmpDir);
std::string rlt = strTmpDir;
return rlt;
}
4.作者答疑
如有疑问,敬请留言。