文件选择对话框,文件夹浏览
char szInitPath[MAX_PATH]={0};
strcpy(szInitPath,g_strOrigPath);
if(m_bIsFile)
{
CFileDialog filedlg(TRUE,NULL,NULL,OFN_FILEMUSTEXIST|OFN_ALLOWMULTISELECT,"Files(*.*)|*.*||");
filedlg.m_ofn.lpstrInitialDir = szInitPath;
filedlg.m_ofn.lpstrTitle = "Please Select File(s):";
if(IDOK == filedlg.DoModal())
{
POSITION pos=filedlg.GetStartPosition();
while(pos!=NULL)
{
CString str=filedlg.GetNextPathName(pos);
m_strArray.Add(str);
}
}
}
else
{
BROWSEINFO bi;
memset(&bi,0,sizeof(bi));
bi.lpszTitle=("Please Select The Source Path:");
bi.lpfn = BrowsCallBackProc;
bi.lParam = (LONG)szInitPath;
LPITEMIDLIST pidl=SHBrowseForFolder(&bi);
char szPath[MAX_PATH]="";
if(SHGetPathFromIDList(pidl,szPath))
m_strOrgPath=szPath;
}