注册 登陆

delphi 删除目录 包括子目录

  1. function DeletePath(mDirName:   string):   Boolean;   {   返回删除指定目录是否成功   } 
  2. var 
  3.     vSearchRec:   TSearchRec; 
  4.     vPathName:   string
  5.     K:   Integer; 
  6. begin 
  7.     Result   :=   True; 
  8.     vPathName   :=   mDirName   +   '\*.*'
  9.     K   :=   FindFirst(vPathName,   faAnyFile,   vSearchRec); 
  10.     while   K   =   0   do   begin 
  11.         if   (vSearchRec.Attr   and   faDirectory   >   0)   and 
  12.             (Pos(vSearchRec.Name,   '..')   =   0)   then   begin 
  13.             FileSetAttr(mDirName   +   '\'   +   vSearchRec.Name,   faDirectory); 
  14.             Result   :=   DeletePath(mDirName   +   '\'   +   vSearchRec.Name); 
  15.         end   else   if   Pos(vSearchRec.Name,   '..')   =   0   then   begin 
  16.             FileSetAttr(mDirName   +   '\'   +   vSearchRec.Name,   0); 
  17.             Result   :=   DeleteFile(PChar(mDirName   +   '\'   +   vSearchRec.Name)); 
  18.         end
  19.         if   not   Result   then   Break; 
  20.         K   :=   FindNext(vSearchRec); 
  21.     end
  22.     FindClose(vSearchRec); 
  23.     Result   :=   RemoveDir(mDirName); 
  24. end

 

« 上一篇 | 下一篇 »