Форум: "Основная";
Текущий архив: 2004.04.18;
Скачать: [xml.tar.bz2];
ВнизУдаление файлов Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.037 c