本文整理自网络,侵删。
uses ShellAPI,DateUtils;
procedure RemoveLogDirectory(DirecName: string);var F: TSHFILEOPSTRUCT;begin try FillChar(F, SizeOf(F), 0); with F do begin Wnd := 0; wFunc := FO_DELETE; pFrom := PChar(DirecName+#0); pTo := PChar(DirecName+#0); ///可还原无确认错误提示 fFlags := FOF_NOCONFIRMATION+FOF_NOERRORUI; end; SHFileOperation(F); except end;end;
procedure DeleteLogDirc(LogPath: string;Days: Integer);var Sr1 : TsearchRec; PathStr : string;begin PathStr := LogPath; if FindFirst(PathStr+'*.*',faAnyFile,SR1)=0 then begin if (Sr1.Name <>'.') and (SR1.Name <> '..') then begin if SR1.Attr = faDirectory then begin if Sr1.Name <(FormatDateTime('YYYYMMDD',IncDay(Now,-Days))) then RemoveLogDirectory(PathStr+Sr1.Name); end; end; while FindNext(SR1)=0 do begin if (Sr1.Name <>'.') and (SR1.Name <> '..') then begin if SR1.Attr = faDirectory then begin if Sr1.Name <(FormatDateTime('YYYYMMDD',IncDay(Now,-Days))) then RemoveLogDirectory(PathStr+Sr1.Name); end; end; end; FindClose(SR1); end;end;
相关阅读 >>
Delphi 导出excel报错:ole error 800a03ec
更多相关阅读请进入《Delphi》频道 >>