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

Вниз

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

 
ZZZ_AC   (2004-03-18 17:44) [0]

Вопрос в следующем есть файл со списком папок и файлов и такая его обработка
while not EOF(Log) do
begin
ReadLn(Log,sRazdel);
if NOT DirectoryExists(sRazdel) then  ShowMessage("Нет такой директории");
RemoveDir(ExtractFileDir(sRazdel));
end;
В результате работы не удаляеться не одна директория. Причем все папки пустые пустые. На проверу DirectoryExists тоже не ругаеться
т.е. говорит что дирретория есть но ее не удаляет.


 
Reindeer Moss Eater ©   (2004-03-18 17:49) [1]

Потому что проверяешь наличие c:\test\test
а удаляешь c:\test

которая ни разу не пустая


 
Defunct ©   (2004-03-18 17:55) [2]

if NOT DirectoryExists(sRazdel) then  ShowMessage("Нет такой директории") Else
RemoveDir(sRazdel);


Хорошо бы вначале войти в каталог и проверить, что он действительно пуст.


 
zZz_AC   (2004-03-18 18:00) [3]

Но если я заменяю
RemoveDir(ExtractFileDir(sRazdel));
на
RemoveDir(sRazdel);
Так-же не удаляет.


 
Reindeer Moss Eater ©   (2004-03-18 18:04) [4]

sRazdel является текущей для какого-то процесса.
Занята одним словом.
Или непуста.


 
Fay ©   (2004-03-18 18:10) [5]

GetLastError что выдаёт?


 
ZZZ_AC   (2004-03-18 18:11) [6]

А можно ли как то проверить кем она занята и освободить?
она точно пуста


 
Fay ©   (2004-03-18 18:14) [7]

GetLastError что выдаёт????????????????????


 
Defunct ©   (2004-03-18 18:16) [8]

> А можно ли как то проверить кем она занята и освободить?

Попробовать удалить, если не удаляется значит занята.

> она точно пуста

Последнее очень сомнительно


 
ZZZ_AC   (2004-03-18 18:34) [9]

Удаляеться на раз без проблемм посредством wincom+F8.
И она точно пуста нет в ней нечего.
GetLastError выдает 32.


 
Reindeer Moss Eater ©   (2004-03-18 18:37) [10]

Твоя программа имеет эту папку в качестве текущего каталога.
Твоя прога открыла и держит эту папку.
Твоя прога сама себе мешает удалить её.


 
ZZZ_AC   (2004-03-18 18:43) [11]

О люди Всем огромное спасибо!
На самом деле нашёл что забыл закрыть поиск.
Добавил всего лишь одну строчку и все заработало FindClose(SearchRD);

Еще раз огромное спасибо!!!!!


 
Fay ©   (2004-03-18 20:50) [12]

ERROR_SHARING_VIOLATION


 
Cobalt ©   (2004-03-18 22:49) [13]

> ZZZ_AC   (18.03.04 18:43) [11]
Ты, случаем, не Dr.Web пишешь?  А то у него точно такие же грабли - не закрывает за собой папки, сволочь!



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

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

Наверх




Память: 0.49 MB
Время: 0.031 c
6-1074348927
AlexC
2004-01-17 17:15
2004.04.04
Тестирование программ без сети


7-1074071934
KokWASP
2004-01-14 12:18
2004.04.04
Из-под NT, W2K не работает FindFirst на NetWare вских дисках.


1-1079381638
Destroyer
2004-03-15 23:13
2004.04.04
Несоответствие типов


9-1063031401
m2003
2003-09-08 18:30
2004.04.04
Display mode cannot be changed


1-1079382820
HepB
2004-03-15 23:33
2004.04.04
Старт в свёрнутом виде