void CTemplateFileDeal::GetTempletFileInfo( CString strWildcard, vector<tempFileInfo>& fileInfoArrout,int parentid, MaindlgFileType folderType)
{
//文件临时信息
tempFileInfo tempfileinfo;
MaindlgFileType fileType = TEMPLETE_FILE;
int n_files = 0;
int n_dirs = 0;
ProPath * file_list = NULL;
ProPath * dir_list = NULL;
//分配内存
err = ProArrayAlloc(0, sizeof(ProPath), 1, (ProArray*)&file_list);
err = ProArrayAlloc(0, sizeof(ProPath), 1, (ProArray*)&dir_list);
// 判断:文件夹类型位个人收藏夹
if(PERSONAL_FOLDER == folderType)
{
fileType = PERSONAL_FILE;
}
//开始从顶级目录查找
err = ProFilesList(strWildcard.GetBuffer(), ".xls", PRO_FILE_LIST_LATEST, &file_list, &dir_list);
if (err == PRO_TK_NO_ERROR)
{
//处理子文件
err = ProArraySizeGet((ProArray)file_list, &n_files);
for ( int ii = 0; ii < n_files; ii++ )
{
tempName=CString(file_list[ii]);
AddFileInfoToArry(finder,tempfileinfo,fileType,parentid,fileInfoArrout);
}
//处理子目录
err = ProArraySizeGet((ProArray)dir_list, &n_dirs);
for ( int ii =0; ii < n_dirs; ii++ )
{
// 将文件夹信息放入到模板树信息中
AddFileInfoToArry(finder,tempfileinfo,folderType,parentid,fileInfoArrout);
// 递归调用
GetTempletFileInfo(finder.GetFilePath(),fileInfoArrout,m_currentID,folderType);
}
}
}