#include "StdAfx.h"
#include "FindFile.h"
//è¿éåªæ¯æµè¯å½æ°
//ä¸è¬æ们éåæ件é½æ¯æç®ç åè¿ä¸ªå类似ç
æ¯ä¸äºä¸è¥¿
void Test(WIN32_FIND_DATA *fd)
{
MessageBox(0,fd->cFileName,0,0);
}
BOOL FindFile(char *pFileName, char * FindFileType)
{
WIN32_FIND_DATA fd;
HANDLE hFind;
char Type[10]={0};
sprintf(Type,".%s",FindFileType);
//HANDLE hFindType;//æ¥æ¾å¯¹åºæ件类å
char FileName[260]={0};
sprintf(FileName,"%s\\*.*",pFileName);
ZeroMemory(&fd,sizeof(fd));
if(0 == strlen(FileName))
{
MessageBox(0,"æ件åä¸è½ä¸ºç©º",0,0);
return FALSE;
}
else
{
hFind = FindFirstFile(FileName,&fd);
if(INVALID_HANDLE_VALUE==hFind)
{
return FALSE;
}
else
{
do
{
//æ¥æ¾æ件ååä¸ææ²¡ä¸ .æ件åç¼ æ³¨æè¦å ç¹ å 为ç¹å¨æ件ååæ¯ç¹æ®ç¬¦å·
//ä¸è¬æ¯ä¸å¯ä»¥ç¨çãä½å¯ä»¥ç¨ç¹æ®æ¹æ³æ¥æ·»å ã
//U çå
ç«å°±æ¯ç¨è¿ä¸æ¹æ³æ¥ æ¥å»ºç«ä¸ä¸ªä¸è½ç¨æ®éæ¹æ³å é¤autorun.infçæ件夹
if(strstr(fd.cFileName,Type))
{
Test(&fd);
}
else
{
//å½è¯¥ææ¡£æ¯æ件æ¶åè¿è¡ä¸åæä½
if(fd.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY)
{
//é¤æ . 表示å½åç®å½ å..ä¸ä¸ä¸ªç®å½ è¿ä¸ªå¨dos ä¸å¯ä»¥çå°
if(strcmp(fd.cFileName,".")!=0&&strcmp(fd.cFileName,"..")!=0)
{
char Temp[256]={0};
sprintf(Temp,"%s\\%s",pFileName,fd.cFileName);
FindFile(Temp,FindFileType);
}
}
}
//继ç»æ¥æ¾ä¸ä¸ä¸ªæ件
} while (FindNextFile(hFind,&fd));
}
}
re
温馨提示:答案为网友推荐,仅供参考