使用API ——SHBrowseForFolder
以下是用户获取某一目录的函数,可以用于保存文件前设置路径:
bool getDir(string& mdir)
{
BROWSEINFO bi;
bi.hwndOwner=NULL;
bi.pidlRoot=NULL;
bi.pszDisplayName=NULL;
bi.lpszTitle=NULL;
bi.ulFlags = 0x0040 | BIF_RETURNONLYFSDIRS | BIF_EDITBOX; // 添加0x0040后得到的文件夹浏览将会存在“新建文件夹”按钮
//bi.ulFlags=0;
bi.lpfn =NULL;
bi.iImage =0;
LPCITEMIDLIST pidl=SHBrowseForFolder(&bi);
if(!pidl)
return 0;
TCHAR szDisplayName[255];
SHGetPathFromIDList(pidl,szDisplayName);
mdir = szDisplayName;
}