掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
空フォルダの検出削除をする (ID:35242)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
てとりあしとり。 空ではないフォルダの削除サンプル。 //その1(FindFirst) 要:SysUtils.pas procedure DeleteFolderA(path:string); var sr:TSearchRec; pathr:string; begin pathr:= IncludeTrailingPathDelimiter(path); if FindFirst(pathr+'*.*', faAnyFile, sr) = 0 then begin repeat if (sr.Name <> '.') and (sr.Name <> '..') then begin if ((sr.Attr or faDirectory) = sr.Attr) then DeleteFolderA(pathr + sr.Name); DeleteFile(pathr + sr.Name); end; until FindNext(sr) <> 0; FindClose(sr); end; RemoveDirectory(PChar(path)); end; //その2(SHFileOperation) 要:ShellAPI.pas procedure DeleteFolderB(path:string); var fs :TSHFileOpStruct; begin FillChar(fs,SizeOf(fs),0); fs.Wnd := Application.Handle; fs.wFunc := FO_DELETE; fs.pFrom := PChar(path + '\*.*' + #0#0); fs.pTo := 0; fs.fFlags:=FOF_SIMPLEPROGRESS or FOF_NOCONFIRMATION; SHFileOperation(fs); RemoveDirectory(PChar(path)); end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.