Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.07.29;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.006 c
14-95513
VictorT
2002-07-02 11:15
2002.07.29
Фотки со встреч мастаков


14-95544
Anatoly Shkodin
2002-07-02 22:01
2002.07.29
Анкета


7-95587
Пушкарев Павел
2002-04-30 16:37
2002.07.29
Как определить Материнскую плату, звуковую и венчестер


14-95540
DeMoN-777
2002-07-02 18:23
2002.07.29
Самый простой алгоритм часов


14-95563
Polygon
2002-07-03 13:58
2002.07.29
IBX for Kylix 2





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский