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

Не могу удалить каталог, что за дела.........   Найти похожие ветки 

← →
Filat ©   (2002-07-17 21:20) [0]

Из FAQ взял следующий код:
function TMain_kb.DeleteDir(Dir : String) : boolean;
var
Found:Integer;
SearchRec:TSearchRec;
begin
result:=False;
if IOResult<>0 then
ChDir(Dir);

{if IOResult<>0 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 DeleteDir(SearchRec.Name) then begin
ShowMessage("Не могу удалить файл: "+SearchRec.Name);;
exit;
end;
Found:=FindNext(SearchRec);
end;
FindClose(SearchRec);
ChDir("..");
RmDir(Dir);
result:=IOResult=0;
end;

При выполнении функции доходит до ShowMessage ("Не могу войти в каталог: "+Dir);
и всё, как заставить удалить нужный мне каталог D:\Program Files\Kl_n\20020717 <-
В ShowMessage строка D:\Program Files\Kl_n\
Подскажите пожалуйста.


← →
Song ©   (2002-07-17 21:33) [1]

Значит у Вас не выполняется команда ChDir(). Вообще странно.
Используте ShFileOperation() - 5 строк за место всего этого текста.


← →
Юрий Зотов ©   (2002-07-17 22:35) [2]

Каталог может не удалиться, если он в данный момент является текущим для какой-либо программы.


← →
Filat ©   (2002-07-18 10:59) [3]

-->> Song ©
Я уже в нескольких примерах встречал использоваине ShFileOperation(), но они у меня не работали, мабуть надо какой то модуль подключить, но какой?

-->> Юрий Зотов ©
Каталог 20020717 создаётся по текущей дате, т.е. новая дата, новый каталог, внутри - таблицы рабочего дня, текущего или прошедшего. В конечном итоге мне надо будет его архивировать, архив перекладывать в каталог архивов, а этот каталог удалять.
Если перед удалением каталога все TTable:=False; этого будет достаточно, чтобы его удалить, или могут быть ещё подводные камни......

Спасибо.


← →
Song ©   (2002-07-18 13:35) [4]

2Filat © (18.07.02 10:59)
ShellApi ?



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

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



Память: 0.46 MB
Время: 0.01 c
1-95396
antoniz
2002-07-16 10:13
2002.07.29
Как узнать координату символа в пикселях в TRichEdit


3-95231
Vikuksa
2002-07-08 11:44
2002.07.29
Так чтобы побыстрей работало ...


1-95362
ValeX
2002-07-02 15:01
2002.07.29
вопрос по TChart


1-95385
hooch
2002-07-16 08:03
2002.07.29
Фреймы в dll (D6, WinXP)


1-95438
Александр
2002-07-16 22:43
2002.07.29
Что я не так делаю?




   Наверх