遍历文件夹 TSearchRec sr; if (FindFirst(dirpath+"/*.*", faAnyFile, sr) == 0)...{ do...{ if(sr.Name!="." && sr.Name!="..")...{ if( (sr.Attr & faDirectory) == faDirectory )...{ if(DropFolderFirstFlag)...{ char buf[5000]; sprintf(buf,BuildSocket->GetStringResource( RES_MSG_ERROR_ADDSUBFOLDER ),dirpath.c_str()); if( Application->MessageBox( buf, BuildSocket->GetStringResource( RES_DLG_CAPTION_SPATH ), MB_YESNO | MB_ICONEXCLAMATION ) == ID_YES )...{ DropFolderSubFlag = true; } DropFolderFirstFlag = false; } if(DropFolderSubFlag)...{ AddDropFolder(key , dirpath+"/"+sr.Name); } }else...{ AnsiString param = dirpath + "/" +sr.Name; param = param + "?" + key; srcManager->AddDropSrcFiles(param.c_str() ,NULL,NULL); } } } while (FindNext(sr) == 0); FindClose(sr); }