Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
0 / 0 / 1
Регистрация: 31.03.2016
Сообщений: 27

Удаление каталога C++ Builder

15.08.2016, 23:56. Показов 2535. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток! У меня возникла проблема.
Хочу удалить папку по нажатию кнопки, вроде бы всё работает, НО!
Вот так всё работает
C++
1
RemoveDir("C:\\Users\\user\\Desktop\\KEK\");
Папка удаляется, всё норм.
Но так уже ничего не удаляется, почему же так присходит?
C++
1
RemoveDir("C:\\Users\\user\\AppData\\Local\\Google\\Chrome\\User Data\\Default\");
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.08.2016, 23:56
Ответы с готовыми решениями:

Удаление текущего (выбранного) каталога
Ребят, возникла следующая проблема. Работаю с реальной файловой системой, использую компонент DirectoryListBox. Необходимо удалять...

Запуск и удаление исполняемых файлов из каталога
Здравствуйте. Помогите пожалуйста разобраться в некоторых местах кода. Полное задание: unit.cpp : ...

Операции создания каталога, изменения временного каталога, удаление файла и директории
Написать программу, которая позволяет выполнять операции создания каталога, изменения временного каталога, удаление файла и директории...

4
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33374 / 21499 / 8235
Регистрация: 22.10.2011
Сообщений: 36,894
Записей в блоге: 11
16.08.2016, 02:19
Проверяй результат, будет понятно, что за проблема:
C++
1
2
3
4
    if(!RemoveDir("C:\\Users\\user\\AppData\\Local\\Google\\Chrome\\User Data\\Default\\"))
    {
        ShowMessage(SysErrorMessage(::GetLastError()));
    }
2
0 / 0 / 1
Регистрация: 31.03.2016
Сообщений: 27
16.08.2016, 11:02  [ТС]
Ой, спасибо) Пишет "Пака не пуста", значит буду пробовать другую реализацию удаления!
0
 Аватар для Dinkin
783 / 556 / 136
Регистрация: 31.05.2013
Сообщений: 3,145
Записей в блоге: 3
16.08.2016, 12:21
Лучший ответ Сообщение было отмечено ololo9808 как решение

Решение

ну так рекурсивно удалить все что в папке.

Вот дедовский способ(последний раз его использовал на BCB6):

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
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;
}
1
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33374 / 21499 / 8235
Регистрация: 22.10.2011
Сообщений: 36,894
Записей в блоге: 11
16.08.2016, 12:22
Используй TDirectory.Delete со вторым параметром, равным true. Этот метод умеет удалять непустые папки.
4
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.08.2016, 12:22
Помогаю со студенческими работами здесь

Выполнение операций создания каталога, изменения временного каталога, удаление файла и директории (рекурсивно)
пожалуйста напишите программу, которая позволяет выполнять операции создания каталога, изменения временного каталога, удаление файла и...

Рекурсивный поиск и удаление каталога. Пробелы в имени каталога
Со вторым днем зимы всех. Есть bat: @echo off rem unsvn.bat setlocal rem rdir=название_удаляемых_каталогов set rdir=Startup ...

Написать программу, которая обеспечивает:начальное формирование каталога файлов;вывод каталога файлов;удаление файлов...
Уважаемые хакеры!Прошу вашей помощи!Я в СИ не особо шарю.((( А на днях уже сдавать.Очень рассчитываю на любую вашу помощь. Вот задача. ...

Удаление каталога
Здравствуйте! Помогите пожалуйста с процедурой....она работает неполноценно....удаляет только пустой каталог. а если я хочу удалить каталог...

Удаление каталога
Помогите пожалуйста с удалением каталога путь которого вводится с клавиатуpы.... Я уже что только не перепробовал. У меня не получается...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru