Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.24;
Скачать: CL | DM;

Вниз

Помогите разобраться !?   Найти похожие ветки 

 
SemFLY ©   (2002-06-10 20:37) [0]

Я использую функцию удаления папок из FAQ, но у меня почемуто не возвращает True по окончанию работы функции.
Вот код :

function DeleteDir(Dir : string) : boolean;
var
Found : integer;
SearchRec : TSearchRec;
begin
Result := False;
DirectoryExists(Dir);
If not DirectoryExists(Dir) then
begin
ShowMessage("Directory not Found !");
exit;
end;
if IOResult<>0 then ;
ChDir(Dir);
if IOResult<>0 then
begin
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
exit;
end;
Found := FindNext(SearchRec);
end;
FindClose(SearchRec);
ChDir("..");
RmDir(Dir);
Result := IOResult = 0;
end;

procedure TForm1.Button6Click(Sender: TObject);
begin
DeleteDir(Edit1.Text);
If DeleteDir(Edit1.Text) then ShowMessage("Directory Del !");
end;


 
aus ©   (2002-06-10 21:07) [1]

Потому что ты сначала удаляешь свою папку, не используя результата функции, а потом получаешь false, т.к. папка уже удалена.
procedure TForm1.Button6Click(Sender: TObject);
begin
DeleteDir(Edit1.Text);// убери это
If DeleteDir(Edit1.Text) then ShowMessage("Directory Del !");
end;


 
SemFLY ©   (2002-06-12 16:47) [2]

aus, Спасибо ! :))





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

Текущий архив: 2002.06.24;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.025 c
4-77692
Atrem
2002-04-26 23:58
2002.06.24
Регистрация своего класса


1-77340
Новеньки в Делфи
2002-06-12 20:22
2002.06.24
какой alt ctrl shift нажат, левый или правый?


14-77559
Бармен
2002-05-19 11:37
2002.06.24
Неделю назад поменял комп :-(((


1-77336
Project1
2002-06-09 23:54
2002.06.24
ООП, блин...


1-77473
Sniffer
2002-06-11 19:29
2002.06.24
Чёртик, бегающий по экрану