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

今晚突发奇想想做一个类似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);
 }
}

如何用CFileDialog得到一个文件夹的路径?_第1张图片

你可能感兴趣的:(null,dialog)