#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
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)