Пятница, 29.03.2024
Просто сайт
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Программирование » Borland C++ Builder 6 » DeleteDir - Удаление непустой папки (Папки)
DeleteDir - Удаление непустой папки
demenevДата: Вторник, 05.01.2010, 13:41 | Сообщение # 1
Группа: Удаленные





// Для того чтобы удалить папку и все файлы в ней напишите следующую функцию:
bool DeleteDir(AnsiString DirName)
{
TSearchRec sr;
if (DirName.Length())
{
if (!FindFirst(DirName+"\\*.*",faAnyFile,sr))
do
{
if (!(sr.Name=="." || sr.Name==".."))// это удалять не надо
if (((sr.Attr & faDirectory) == faDirectory ) ||
(sr.Attr == faDirectory))// найдена папка
{
FileSetAttr(DirName+"\\"+sr.Name, faDirectory );// сброс всяких read-only
DeleteDir(DirName+"\\"+sr.Name);//рекурсивно удаляем содержимое
RemoveDir(DirName + "\\"+sr.Name);// удаляем теперь уже пустую папку
}
else// иначе найден файл
{
FileSetAttr(DirName+"\\"+sr.Name, 0);// сброс всяких read-only
DeleteFile(DirName+"\\"+sr.Name);// удаляем файл
}
}
while (!FindNext(sr));// ищем опять, пока не найдем все
FindClose(sr);
}
RemoveDir(DirName);
return true;
}
 
Форум » Программирование » Borland C++ Builder 6 » DeleteDir - Удаление непустой папки (Папки)
  • Страница 1 из 1
  • 1
Поиск:

Copyright MyCorp © 2024
Создать бесплатный сайт с uCoz