/*********************************************************
**函数名称 : FindDeviceDirectory
**函数功能 :
**输入参数 :
**输出参数 : Vector<CString> Device目录下的文件夹名称
**返回值 :
修改记录
**作者 :GongKiro
**日期 :2013-09-27
**修改内容 :新增函数
************************************************************/
bool FindDeviceDirectory(vector<CString> &Filename)
{
CString szFilePath = m_strFileDirectory.c_str();
szFilePath += "\\omc\\device\\";
long FileNo = -1;
CString szDirectory; //Dev directory address + name
CFileFind Filefind;
CString szFileTemp = szFilePath;
szFileTemp += "\\*.*";
BOOL bIsEnd = Filefind.FindFile(szFileTemp);
while(bIsEnd)
{
bIsEnd = Filefind.FindNextFile();
if (Filefind.IsDirectory() && !Filefind.IsDots())
{
Filename.push_back(Filefind.GetFileName());
}
}
return true;
}
<pre name="code" class="cpp">INT FindFile(const TCHAR *szPath,const TCHAR *szFileName,CStringArray *paStrResult)
{
ASSERT(paStrResult!=NULL);
CString StrPath(szPath);
CString StrFileName(szFileName);
if (StrPath[StrPath.GetLength()-1] != _T('\\'))
StrPath += _T('\\');
CString StrFindPath = StrPath + _T("*.*");
CFileFind finder;
BOOL bWorking = finder.FindFile(StrFindPath);
while(bWorking)
{
bWorking = finder.FindNextFile();
if (finder.IsDirectory()&&!finder.IsDots())
{
FindFile(StrPath+finder.GetFileName(),StrFileName,paStrResult);
}
if (finder.GetFileName().CompareNoCase(StrFileName)==0)
{
paStrResult->Add(finder.GetFilePath());
}
}
INT nFile = paStrResult->GetSize();
return nFile;
}