void OnMyFilePath() { char szDisplayName[MAX_PATH]; char szBuffer[MAX_PATH]={0}; BROWSEINFO browseInfo; browseInfo.hwndOwner=hwnd; browseInfo.pidlRoot=NULL; browseInfo.pszDisplayName=szDisplayName; browseInfo.lpszTitle= "请选择文件的存储路径 "; browseInfo.ulFlags=BIF_RETURNFSANCESTORS|BIF_RETURNONLYFSDIRS|BIF_EDITBOX; browseInfo.lpfn=NULL; browseInfo.lParam=0; LPITEMIDLIST lpItemIDList; if((lpItemIDList=SHBrowseForFolder(&browseInfo))!=NULL) { if(SHGetPathFromIDList(lpItemIDList,szBuffer)) { if(szBuffer[0]== '/0 ') { MessageBox(NULL, "Fail to get directory ", "你 好! ",MB_ICONSTOP|MB_OK); return; } }
} else { MessageBox(NULL, "Fail to get directory ", "你好! ",MB_ICONSTOP|MB_OK); return; } if(szBuffer[0]== '/0 ') { MessageBox(NULL, "你没有选择文件夹! ", "你好! ",MB_OK); } //szBuffer中就是文件夹的路径了 }