我只想浏览到文件,而不想打开文件,从而取得这个文件的路径
把它放到CEditBox中去,怎么做阿??
用CFielDialog总是打开文件到这个文件里面具体的什么子文件,
请高手指教???

解决方案 »

  1.   

    CFileDialog类可以返回路径的。用GetPathName();差不多的,不是GetFileName()...
      

  2.   

    我只是想浏览到文件,然后把这个时候的路径
    保存到编辑框中,而不是打开文件。用CFielDialong可以吗?
    高手帮忙了阿!!!!SHBrowseForFolder
    怎么用阿??
      

  3.   

    自己重载一下CFileDialog,让它单击OK时不打开文件就可以了。================================================
    百尺竿头,卧薪尝胆
      

  4.   

    void CSQLConvertDlg::OnButtonOutputpath() 
    {
    // TODO: Add your control notification handler code here
    CString str;
    BROWSEINFO bi;
    char name[PATHSIZE];

    ZeroMemory(&bi,sizeof(BROWSEINFO));
    bi.hwndOwner = GetSafeHwnd();
    bi.pszDisplayName = name;
    bi.lpszTitle = "请选择脚本输出目录";
    bi.ulFlags= BIF_EDITBOX ;

    LPITEMIDLIST idl = SHBrowseForFolder(&bi);
    if(idl == NULL)
    return;
    SHGetPathFromIDList(idl, str.GetBuffer(PATHSIZE));
    str.ReleaseBuffer();

    CEdit *pwnd = (CEdit*)GetDlgItem(IDC_EDIT_OUTPUTPATH);
    if (pwnd->m_hWnd != NULL)
    {
    pwnd->SetWindowText(str);
    }
    }
      

  5.   

    BrowseForFolder这个函数在MSDN中写在了shell objects for scripting and Visual Basic里了,但在VC里也能用.比用SHBrowseForFolder简单一些.
    CString& BrowseForFolder(HWND hWnd, LPCSTR lpszTitle,UINT nFlags);
      

  6.   

    楼上,BrowseFromFolder该怎么用阿,请指点
    我很菜,帮忙了!!!!
      

  7.   

    hWnd是主窗口的句柄,lpszTitle里随便写点东西,nFlag里可以写BIF_BIF_BROWSEFORCOMPUTER 返回选定的文件夹(或者文件)在msdn里搜索一下吧,没有几篇关于它的文章。看看就知道怎么用了。