Главная страница
    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.45 MB
Время: 0.007 c
1-95308
Cosinus
2002-07-15 17:10
2002.07.29
Не подскажите, как сделать так, чтобы после компиляции программы


1-95274
AFROLOV
2002-07-15 13:18
2002.07.29
Передача параметра по ссылке


14-95520
adogg
2002-07-02 20:38
2002.07.29
Проблема с установкой компонент


3-95185
DreaD
2002-07-05 17:00
2002.07.29
Я новичок. С чего начать создавать прогу?


6-95469
Свой
2002-05-15 11:40
2002.07.29
Преобразование адресов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский