CodeNet / Языки программирования / Delphi & Kylix / FAQ - Часто задаваемые вопросы / Пишем инсталятор.
FAQ - Удаление каталога со всем содержимым
Удаление каталога со всем содержимым
© Зайцев Олег
http://z-ol.chat.ru/
http://z-ol.chat.ru/
{ Удалить каталог со всем содержимым }
function DeleteDir(Dir : string) : boolean;
Var
Found : integer;
SearchRec : TSearchRec;
begin
result:=false;
if IOResult0 then ;
ChDir(Dir);
if IOResult0 then begin
ShowMessage('Не могу войти в каталог: '+Dir); exit;
end;
Found := FindFirst('*.*', faAnyFile, SearchRec);
while Found = 0 do
begin
if (SearchRec.Name'.')and(SearchRec.Name'..') then
if (SearchRec.Attr and faDirectory)0 then begin
if not DeleteDir(SearchRec.Name) then exit;
end else
if not DeleteFile(SearchRec.Name) then begin
ShowMessage('Не могу удалить файл: '+SearchRec.Name); exit;
end;
Found := FindNext(SearchRec);
end;
FindClose(SearchRec);
ChDir('..'); RmDir(Dir);
result:=IOResult=0;
end;
