1. 程式人生 > >VC++ MFC 獲取檔案路徑 獲取資料夾路徑

VC++ MFC 獲取檔案路徑 獲取資料夾路徑

 //獲取資料夾的路徑
 CString strPath = _T("");
 CFileDialog Open(TRUE,_T("*.bmp"),NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,_T("Bitmap Files (*.bmp)|*.bmp|JPEG Files (*.jpg)|*.jpg|All Files (*.*)|*.*||"),NULL);
 if(Open.DoModal()==IDOK)
 {
  strPath=Open.GetPathName();//這就是你要的路徑了。
 }
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 //獲取是選中的檔案的路徑
 CString m_strFileOut = _T("");
 TCHAR szSelected[MAX_PATH];//用來存放資料夾路徑
 BROWSEINFO bi;
 LPITEMIDLIST pidl;
 bi.hwndOwner = this->m_hWnd;
 bi.pidlRoot = NULL;
 bi.pszDisplayName = szSelected;
 bi.lpszTitle = _T("選擇輸出檔案路徑");
 bi.ulFlags = BIF_RETURNONLYFSDIRS;
 bi.lpfn = NULL;
 bi.lParam = NULL;
 bi.iImage = NULL;
 if((pidl = SHBrowseForFolder(&bi)) != NULL)
 {
  if(SUCCEEDED(SHGetPathFromIDList(pidl, szSelected))) //得到資料夾的全路徑,不要的話,只得本資料夾名
  {
   m_strFileOut = szSelected;
  }
 }