【 tulaoshi.com - 编程语言 】
                             
                            VC++只提供了删除一个空目录的函数,而用往往希望删除其下有很多子目录与文件的目录。为了实现这一功能,下面编写了DeleteDirectory 函数,它可以实现这一功能。  
  函数原型:BOOL DeleteDirectory(char *DirName);  
  返回值:成功删除时返回TRUE,否则返回FALSE  
  参数DirName为要删除的目录名,必须为绝对路径名,如“c:emp"。函数定义如下:  
  BOOL DeleteDirectory(char *DirName)  
  {  
  CFileFind tempFind;  
  char tempFileFind[200];  
  sprintf(tempFileFind,"%s*.*",DirName);  
  BOOL IsFinded=(BOOL)tempFind.FindFile(tempFileFind);  
  while(IsFinded)  
  {  
  IsFinded=(BOOL)tempFind.FindNextFile();  
  if(!tempFind.IsDots())  
  {  
  char foundFileName[200];  
  strcpy(foundFileName,tempFind.GetFileName().GetBuffer(200));  
  if(tempFind.IsDirectory())  
  {  
  char tempDir[200];  
  sprintf(tempDir,"%s%s",DirName,foundFileName);  
  DeleteDirectory(tempDir);  
  }  
  else  
  {  
  char tempFileName[200];  
  sprintf(tempFileName,"%s%s",DirName,foundFileName);  
  DeleteFile(tempFileName);  
  }  
  }  
  }  
  tempFind.Close();  
  if(!RemovwDirctory(DirName))  
  {  
  MessageBox(0,"删除目录失败!","警告信息",MK_OK);  
  return FALSE;  
  }  
  return TRUE;  
  }