MFC浏览文件夹、新建文件夹功能

使用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;
}


你可能感兴趣的:(C++,mfc)