// SHGetFolderPath
string cFilePath;
SHGetFolderPath(NULL ,CSIDL_PERSONAL ,0 ,0 ,cFilePath);
以下为函数原型:
HRESULT SHGetFolderPath(
HWND hwndOwner,
int nFolder,
HANDLE hToken,
DWORD dwFlags,
LPTSTR pszPath
);
其中nFolder指定要获取的目录(具体参考MSDN说明)
CSIDL_BITBUCKET 回收站
CSIDL_CONTROLS 控制面板
CSIDL_DESKTOP Windows 桌面Desktop
CSIDL_DESKTOPDIRECTORY Desktop的目录
CSIDL_DRIVES 我的电脑
CSIDL_FONTS 字体目录
CSIDL_NETHOOD 网上邻居
CSIDL_NETWORK 网上邻居虚拟目录
CSIDL_PERSONAL 我的文档
CSIDL_PRINTERS 打印机
CSIDL_PROGRAMS 程序组
CSIDL_RECENT 最近打开的文档
CSIDL_SENDTO “发送到”菜单项
CSIDL_STARTMENU 任务条启动菜单项
CSIDL_STARTUP 启动目录
CSIDL_TEMPLATES 文档模板
// GetTempPath 得到系统临时目录
char tempPath[_MAX_PATH+1] = { ‘\0‘ };
GetTempPath(_MAX_PATH, tempPath); //tempPath = "C:\Users\a\AppData\Local\Temp\"