Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.29;
Скачать: 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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.014 c
14-95567
MaximatorVeter
2002-07-03 20:36
2002.07.29
От Спида каждый день умирает 8220 человек!


4-95617
Dorex
2002-05-20 09:57
2002.07.29
Надо добавить кнопку в заголовок окна.


3-95214
ppcat
2002-07-06 09:04
2002.07.29
ADO, MS SQL 7.0 и обновляемые просмотры


3-95222
Tutov Roman
2002-07-08 11:25
2002.07.29
Помогите составить запрос ...


6-95476
Сатир
2002-05-16 18:52
2002.07.29
Получение файла из сервера