我在做一个 打包软件现在问题是如何得到一个目录:恩. 比如. CFileDialog 可以打开一个选择文件的对话框.然后选择一个文件,点OK
就可以得到这个文件的路径
现在我要的不是文件而是 目录
达到的效果是;点一个按纽 打开一个 对话框.然后选择一个目录(点一个目录).返回得到目录的路径
如何做呢.PS: 象 winamp 添加目录那样,可以选择一个目录:)
就可以得到这个文件的路径
现在我要的不是文件而是 目录
达到的效果是;点一个按纽 打开一个 对话框.然后选择一个目录(点一个目录).返回得到目录的路径
如何做呢.PS: 象 winamp 添加目录那样,可以选择一个目录:)
BROWSEINFO bi;
char Buffer[MAX_PATH];
// 初始化入口参数bi开始
bi.hwndOwner = this->m_hWnd;
bi.pidlRoot = NULL;
bi.pszDisplayName = Buffer; // 此参数如为NULL则不能显示对话框
bi.lpszTitle = "选择存储输出文件的文件夹。";
bi.ulFlags = BIF_RETURNFSANCESTORS | BIF_RETURNONLYFSDIRS;
bi.lpfn = NULL;
bi.lParam = 0;
// 初始化入口参数bi结束
LPITEMIDLIST pIDList = SHBrowseForFolder(&bi); // 调用显示选择对话框
if(pIDList)
{
// 取得文件夹路径到Buffer里
SHGetPathFromIDList(pIDList, Buffer);
sFolderPath = Buffer; // 将路径保存在一个CString对象里
((CEdit*)GetDlgItem(IDC_PATH))->SetWindowText(sFolderPath);
}
LPMALLOC lpMalloc;
if(FAILED(SHGetMalloc(&lpMalloc))) return;
// 释放内存
lpMalloc->Free(pIDList);
lpMalloc->Release();