Вниз
Скачать: CL | DM;

Как можно удалить папку?   Найти похожие ветки 

 
Геральт   (2002-03-05 19:41) [0]

Не подскажите, как можно удалить непустую папку. Желательно без задавания лишнх вопросов - папка временная и пользователю не следует знать о ее существовании


 
lipskiy ©   (2002-03-05 20:23) [1]

//##############################################################################
// удаляет все содержимое каталога вместе с подкаталогами
// RemoveRoot указывает на необходимость удаления корня каталога
// при установке в False функция используется для очистки содержимого каталога
function sRemoveDir(Dir:string; RemoveRoot:boolean):Boolean;
//##############################################################################
var i:Integer;
SRec:TSearchRec;
FN:String;
begin
Result:= True;
if Dir[Length(Dir)] <> "\" then Dir:= Dir + "\";
Dir:= Dir + "*.*";

i:= FindFirst(Dir, faAnyFile, SRec);
while i = 0 do
begin
FN:= ExtractFileDir(Dir)+"\"+SRec.Name;
if SRec.Attr = faDirectory then
begin
if (SRec.Name <> "" ) and (SRec.Name <> ".") and (SRec.Name <> "..") then
sRemoveDir(FN,True);
end
else
begin
if SRec.Attr <> faArchive then FileSetAttr(FN, faArchive);
if not DeleteFile(FN) then Result:= false;
end;
i:= FindNext(SRec);
end;
FindClose(SRec);

if RemoveRoot then
try
if not RemoveDir(Dir) then Result:= false;
except
end;

end;


 
Геральт   (2002-03-05 21:27) [2]

Спасибо


 
Olivka   (2002-03-05 21:49) [3]

если используешь RxLib, то там есть функция удаления папки, очень удобная



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
1-66927
Aleksandr
2002-03-06 14:10
2002.03.21
Как врезать Define в проект?


1-66926
ak
2002-03-06 18:47
2002.03.21
проблема с версией BDE


3-66763
Лёша
2002-02-22 03:58
2002.03.21
Динамический массив в Interbase.


1-66891
Vacheslav
2002-03-05 19:09
2002.03.21
Как обработать событие перекрытия компонентов?


6-66954
BWG
2002-01-05 12:50
2002.03.21
Это все RAS?




   Наверх