浏览文件夹对话框的实现方法????

解决方案 »

  1.   

    CFileDialog dlgOpen(TRUE,"","*.*");
    dlgOpen.DoModal();
      

  2.   

    http://www.codeguru.com/Cpp/W-D/dislog/看Dialog for selecting folders 项
      

  3.   

    LPITEMIDLIST SHBrowseForFolder(
    LPBROWSEINFO lpbi
    ); typedef struct _browseinfo { 
        HWND hwndOwner; 
        LPCITEMIDLIST pidlRoot; 
        LPTSTR pszDisplayName; 
        LPCTSTR lpszTitle; 
        UINT ulFlags; 
        BFFCALLBACK lpfn; 
        LPARAM lParam; 
        int iImage; 
    } BROWSEINFO, *PBROWSEINFO, *LPBROWSEINFO; 
      

  4.   

    BROWSEINFO bBinfo;
     memset(&bBinfo,0,sizeof(BROWSEINFO));  //定义结构并初始化
     bBinfo.hwndOwner=m_hWnd;//设置对话框所有者句柄
     char strTmp[255];
         bBinfo.lpszTitle="请选择安装路径:";
         bBinfo.ulFlags = BIF_RETURNONLYFSDIRS; //设置标志只允许选择目录    
         LPITEMIDLISTlpDlist;
    //用来保存返回信息的IDList,使用SHGetPathFromIDList函数转换为字符串
     lpDlist=SHBrowseForFolder(&bBinfo) ; //显示选择对话框
     if(lpDlist!=NULL)
     {
      SHGetPathFromIDList(lpDlist,strTmp);//把项目标识列表转化成目录
      TRACE(strTmp);
      }