Delphi中使用API将目录删除函数

以往删除目录时,都是用递归删干净目录下的文件和子文件夹,如果文件数量大,则删除速度会很慢
在此直接使用使用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;

你可能感兴趣的:(function,String,api,delete,Delphi)