void CMyDlg::OnBtnBrowsefolder() { // TODO: Add your control notification handler code here BROWSEINFO bInfo; bInfo.hwndOwner = this->m_hWnd; //父窗口句柄 bInfo.pidlRoot = NULL; //初始目录 bInfo.pszDisplayName = NULL; // bInfo.lpszTitle = "浏览文件夹"; //对话框文本 bInfo.ulFlags = 0; //标志 bInfo.lpfn = NULL; //回调函数 bInfo.lParam = 0; //参数 bInfo.iImage = 0; //图像索引 ITEMIDLIST* pItemList = SHBrowseForFolder(&bInfo); //弹出对话框 TCHAR FolderDir[MAX_PATH]; //大小必须指定为MAX_PATH SHGetPathFromIDList(pItemList, FolderDir); //获得路径 CString tmp; tmp.Format("%s", FolderDir); MessageBox("文件夹路径为" + tmp, "Tip", MB_ICONINFORMATION); } 代码有注释,请直接看代码,不解释了。