如题,谢谢!

解决方案 »

  1.   

    CFileDialog dlg(TRUE); // open dialog
     
    if(dlg.DoModal()==IDOK)
      strFileName  = dlg.GetFileName();
      

  2.   

    CFileDialog DLG();
    CString strPathName;
    if (DLG.DoModal()=IDOK)
    {
       strPathName=DLG.GetPathName();
    }
      

  3.   

    GetOpenFileName()
    参数设置一下就可以了
      

  4.   

    CFileDialog dlg(TRUE); // open dialog
     CString strFileName;
    if(dlg.DoModal()==IDOK)
      strFileName  = dlg.GetPathName();
      

  5.   

    如果楼主的意思是得到文件之后,在自己得到该文件的路经,那么楼上的几个还勉强,但
    应该是CFileDialog的GetFilePath()函数,否则像楼上说的GetFileName只能返回文件名。
    如C:\temp\text.txt用GetFileName返回的是text.txt,而GetFilePath是C:\temp\text.txt。如果楼主想通过CFileDialog直接得到一个路经而不是文件,那么应该:
    使用SHBrowseForFolder,例如:
             BROWSEINFO info;
    memset(&info, 0, sizeof(info));
    info.lpszTitle = "选择XX文件所在的目录:";
    LPCITEMIDLIST pidl;
    pidl = SHBrowseForFolder(&info);
    if(pidl != NULL)
    {
    char pszPath[4096];
    if(!SHGetPathFromIDList(pidl, pszPath))
    return;
    if(strlen(pszPath) < 3)
    return; }