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

Вниз

Удаление файлов   Найти похожие ветки 

 
KyRo ©   (2004-04-03 00:27) [0]

У меня такой вопрос можно ли удалить папку с файлами без запросов и даже есле в ней будут вложеные папки ??


 
хз ©   (2004-04-03 02:05) [1]

Можно.


 
KyRo ©   (2004-04-03 02:36) [2]

Спасибо что сказал , а как это сделать ??


 
kaif ©   (2004-04-03 03:08) [3]

Пишем процедуру DelAll666(const Dir: string)
 В ней нужно с помощью функций FindFirst/FindNext/FindClose обойти все файлы директории Dir и для тех из них, которые представляют собой поддиректории вызвать саму функцию DelAll666 рекурсивно, передавая в нее имя каждой найденной директории, после чего удалять эту директорию. А для каждого найденного файла (который директорией не является) просто вызывать функцию удаления файла.
 ВАЖНАЯ ФИШКА!!!!!!!
 В этом цикле обязательно нужно исключить обработку файлов с именами "." и ".."! Иначе процедура пойдет не только "внутрь" папок, но и "наружу" и сотрет весь винчестер. Я однажды такое сделал при небрежном написании и пробном запуске именно такой процедуры! Было очень больно. Поэтому рекомендую сначала отладить рекурсивный обход с отладочным выводом и убедиться, что папки обходятся правильно. И только затем вставить в текст команды удаления файлов и директорий.


 
хз ©   (2004-04-03 03:58) [4]

kaif ©   (03.04.04 03:08) [3]

В этом цикле обязательно нужно исключить обработку файлов с именами "." и ".."! Иначе процедура пойдет не только "внутрь" папок, но и "наружу" и сотрет весь винчестер. Я однажды такое сделал при небрежном написании и пробном запуске именно такой процедуры!

:o)


 
Anatoly Podgoretsky ©   (2004-04-03 12:31) [5]

KyRo ©   (03.04.04 02:36) [2]
А чего тогда тянешь кота за хвост, сразу бы задал вопрос, а то так осторожно.
Ищи ответ в ShFileOperation, это та функция, которую нужно использовать практически для всех стандартных операций над файлами.



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

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

Наверх




Память: 0.48 MB
Время: 0.025 c
3-1080116743
Ivan
2004-03-24 11:25
2004.04.18
Master table open operation failed


1-1080718517
}|{yk
2004-03-31 11:35
2004.04.18
Скопировать диапазон значений в Excel


14-1079863601
Goida
2004-03-21 13:06
2004.04.18
Глюки, глюки, глюки!!!! Форум не обновляется!..


14-1080014499
Романов Р.В.
2004-03-23 07:01
2004.04.18
Опрос - Инструменты программиста


6-1076337166
StasIK
2004-02-09 17:32
2004.04.18
Помогите закрыть доступ в инет