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

Вниз

Проблема с удалением папки   Найти похожие ветки 

 
Yegorchic ©   (2006-08-11 10:10) [0]

Применяю вот такой код для удаления папок:


 i:=0;
 repeat
   if (TreeView.Items.Item[i].Parent.Index = -1) and (TreeView.Items.Item[i].Count = 0) then
     begin
       RemoveDir(PCHAR(AppDir + "\BackUp\"+TreeView.Items.Item[i].Text));
       If not DirectoryExists(AppDir + "\BackUp\"+TreeView.Items.Item[i].Text) then
         TreeView.Items.Item[i].Delete;
     end;
   inc(i);
 until TreeView.Items.Count <= i;


Что папки пустые и путь к папке в цикле гененируется правильно - проверял. Но из всех папок удаляется только последняя найденная в цикле. Почему?


 
Сергей М. ©   (2006-08-11 10:27) [1]

Объясни на человеческом языке, что тебе нужно)
Подозреваю, что ты пытаешься удалить все папки, ассоциированные с корневыми узлами дерева, не имеющие подпапки .. так ?


 
D@Nger ©   (2006-08-11 14:32) [2]

Я удаляю папки, со всеми вложениями следующим способом:


function TFRestoreArchive.DeleteDir(path:string):boolean;
var  OpStruc: TSHFileOpStruct;
    buf: Array [0..128] of Char;
Begin
  FillChar(buf, Sizeof(buf), 0 );
  StrPCopy(buf,path+"\*.*");
  With OpStruc DO
  Begin
    Wnd:= Handle;
    wFunc:= FO_DELETE;
    pFrom:= @buf;
    pTo:=#0;
    fFlags:=FOF_NOCONFIRMATION or FOF_NOCONFIRMMKDIR or FOF_NOERRORUI;
    fAnyOperationsAborted:= False;
    hNameMappings:= Nil;
    lpszProgressTitle:= Nil;
  end;
 if ShFileOperation(OpStruc)=0 then result:=true else result:=false;
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.047 c
2-1155626056
I.N.
2006-08-15 11:14
2006.09.03
Динамические массивы


1-1153462892
ANB
2006-07-21 10:21
2006.09.03
Как вытащить истинный путь к файлу ?


2-1155556678
Yel
2006-08-14 15:57
2006.09.03
"Дочерние объекты"


15-1155024024
__DATA__
2006-08-08 12:00
2006.09.03
Заменить один класс компонентов на другой


6-1145455442
rOJIOBHA9 AHuBPu3MA
2006-04-19 18:04
2006.09.03
Как проверить сущестование почтового ящика на Exchange Server