C++打開瀏覽目錄返回所選擇的目錄路徑

 

/******************************************************************************************************/
//Name:      getDirector;
//Describe:
//        彈出標準系統文件目錄框.供用戶選擇目錄.
//        傳入彈出框的標題:
//        返回用戶選擇的目錄.
// Subject: C++
// Add Date :2007.12.13
/******************************************************************************************************/

 String CFristCDlg::getDirector(CString title)


{
 ITEMIDLIST *ppidl;
 SHGetSpecialFolderLocation(NULL, CSIDL_DESKTOP ,&ppidl);
 if ( ppidl == NULL)
 {
 AfxMessageBox(_T("啓動路徑瀏覽失敗") ) ;
 return _T("error");
 }
 TCHAR path[255] = _T("");
 BROWSEINFO *bi=new BROWSEINFO;
 bi->hwndOwner=NULL;
 bi->pidlRoot=ppidl;
 bi->pszDisplayName=NULL;
 bi->lpszTitle=title;
 bi->lpfn=NULL;
 bi->ulFlags=/*BIF_BROWSEINCLUDEFILES|*/BIF_EDITBOX |BIF_RETURNONLYFSDIRS ;
 ppidl = SHBrowseForFolder(bi);
 if ( !SHGetPathFromIDList(ppidl,path) )
 {
 delete bi;
 return _T("error") ;
 }
 delete bi;
 CString s = path ;
 if ( s.Right( 1 ) != _T("//") )
 s+= _T("//") ; 
 return s ;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章