基于对话框的
只要能实现目录显示即可
不需别的操作
越简单越好
本人初学
见笑了

解决方案 »

  1.   

    #include <shlobj.h>
    // Linked with shell32.lib  TCHAR szPath[MAX_PATH];
    LPITEMIDLIST pidl; 
    LPITEMIDLIST pidlRoot; 
    LPMALLOC lpMalloc; BROWSEINFO bi = { m_hWnd, NULL, szPath, "请选择录制文件临时存放路径", BIF_RETURNONLYFSDIRS, NULL, 0L, 0};

    if (0 != SHGetSpecialFolderLocation(HWND_DESKTOP, CSIDL_DRIVES, &pidlRoot)) 
    return; if (NULL == pidlRoot) 
    return;   bi.pidlRoot = pidlRoot;  pidl = SHBrowseForFolder(&bi); 

    if (NULL != pidl)
    {
    SHGetPathFromIDList(pidl, m_strTempPath.GetBuffer(MAX_PATH)); 
    m_strTempPath.ReleaseBuffer();
    }

    // Get the shell's allocator to free PIDLs 
    if (!SHGetMalloc(&lpMalloc) && (NULL != lpMalloc)) 

    if (NULL != pidlRoot)

    lpMalloc->Free(pidlRoot); 
    }  

    if (NULL != pidl) 

    lpMalloc->Free(pidl); 
    }

    lpMalloc->Release(); 
    }