解决方案 »

  1.   

    用CtreeCtrl 和 遍历文件夹的方式 自己写一个
      

  2.   

    通过修改文件名缓冲区即可对打开文件最大数进行调整
    //创建打开多文件对话框
    CFileDialog dlg(true, NULL, NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT|OFN_ALLOWMULTISELECT,  _T("DWG Files(*.dwg)|*.dwg||"),NULL);  
    // 创建文件名集合缓冲区
    dlg.m_ofn.lpstrTitle=_T("请选择需要打印文件");//设置对话框标题
    dlg.m_ofn.nMaxFile = 100 * MAX_PATH;//最多可以打开100个文件
    dlg.m_ofn.lpstrFile = new TCHAR[dlg.m_ofn.nMaxFile];
    ZeroMemory(dlg.m_ofn.lpstrFile, sizeof(TCHAR) * dlg.m_ofn.nMaxFile); //清零,必须
    //显示文件对话框,获得文件名集合
    if (dlg.DoModal() == IDOK)

    POSITION pos_file; 
    pos_file = dlg.GetStartPosition(); 
    CArray<CString, CString> ary_filename; 
    while(pos_file != NULL) 

    ary_filename.Add(dlg.GetNextPathName(pos_file));