如何用CFileDialog得到一个文件夹的路径?

来源:互联网 发布:直销三条线是矩阵制吗 编辑:程序博客网 时间:2024/06/17 02:32

今晚突发奇想想做一个类似widows的搜索文件小程序,在http://topic.csdn.net/t/20041027/15/3496061.html发现一段经典代码

特记录如下,以备不时只需。

code:

void CFindFileDlg::OnButton1()
{
 // TODO: Add your control notification handler code here
 BROWSEINFO   bInfo;
 ZeroMemory(&bInfo,sizeof(bInfo));
 bInfo.hwndOwner = m_hWnd;
 TCHAR tchPath[255];
 bInfo.lpszTitle = _T( "所选择路径:   ");
 bInfo.ulFlags = BIF_RETURNONLYFSDIRS;        
 
 LPITEMIDLIST lpDlist;
 //用来保存返回信息的IDList,使用SHGetPathFromIDList函数转换为字符串
 lpDlist = SHBrowseForFolder(&bInfo)   ;   //显示选择对话框
 if(lpDlist != NULL)
 {
  SHGetPathFromIDList(lpDlist,tchPath);//把项目标识列表转化成目录
  //  TRACE(tchPath);
  SetDlgItemText(IDC_EDIT1,tchPath);
 }
}

原创粉丝点击