您的位置:首页 >> 问答系统 >> DELPHI相关 >> 文件操作类 >> 如何快速删除整个目录
已解决
提问者:mychj2 - 童生≈一级

如何快速删除整个目录

悬赏金额(1积分=0.1元):0 - 提问时间:2008-6-13 8:08:43 - 阅读次数:-回答本问题若被采纳你可得积分为:0*.8=0
如何快速删除整个目录
问题补充提高悬赏无满意答案举行投票撤消问题我来回答评论举报
最佳答案
回答者:mychj - 童生≈一级 - 06-13 08:10
以往删除目录时,都需要先用递归删干净目录下的文件和子文件夹,这样做的时候,如果文件数量大,那么删除会非常慢
于是找了个方便一点的方法,直接使用API将目录删除

代码如下:

function DelDirectory(const Source: string): boolean;
var
    fo: TSHFILEOPSTRUCT;
begin
    FillChar(fo, SizeOf(fo), 0);
    with fo do
    begin
      Wnd    := 0;
      wFunc := FO_Delete;
      pFrom := PChar(Source + #0);
      pTo    := #0#0;
      fFlags := FOF_NOCONFIRMATION + FOF_SILENT;
    end;
    Result := (SHFileOperation(fo) = 0);
end;

提问者对答案的评价:
感谢mychj的精彩解答
相关问题