mfc--弹出文件夹对话框

时间:2023-03-10 05:16:51
mfc--弹出文件夹对话框

1. HRESULT CoInitializeEx(void* pvReserved,DWORD dwCoInit)

初始化com组件,传递参数COINIT_APARTMENTTHREADED

2.LPITEMIDLIST SHBrowseForFolder(LPBROWSEINFO lpbi)

如果没选择,则返回NULL,否则返回一个用来描述所选择文件夹的项目标识列表

参数LPBROWSEINFO的成员pszDisplayName必须初始化一块空间,否则,不出对话框

3.bool SHGetPathFromIDList(LPCITEMIDLIST pidl,LPTSTR pszPath)

把项目标志列表转换为文件系统路径

4.释放空间

HRESULT SHGetMalloc(LPMALLOC * ppMalloc)得到要释放的内存空间

PpMalloc->Free(void*)//此处传LPITEMIDLIST

PpMalloc->Release();

还可以进行文件夹过滤设置

PathFileExists判断文件/文件夹是否存在