![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Удаление папки, содержащей БД [D7, Paradox]
Ilg © (2008-07-29 10:37:00)Здравствуйте!
Ситуация такая:
Нужно удалить папку, в которой находятся файлы БД (вместе с файлами). До момента удаления БД была открыта! Отключаю БД, удаляю и ... вдруг оказывается, что папка не удалилась. Но самое удивительное, что все файлы внутри нее нормально удалены. Причем удалить эту пустую папку не получается ни из программы, ни вручную (из Проводника) - нет доступа. Доступ появляется только после выхода из программы или подключения к другой БД...
Собственно вопрос - почему так происходит, где блокируется эта папка? Может сам BDE? И как ее разблокировать?
Заранее, Большое спасибо!
Виталий Панасенко(дом) (2008-07-30 13:52:00) [1]Отключи Session.Active := False.. может поможет
MsGuns (2008-07-29 13:06:00) [2]Папка блокируется BDE т.к. база данных остается открытой даже если нет ни одной открытой таблицы
Сергей М. (2008-07-29 13:05:00) [3]
> Ilg (29.07.08 13:01) [10]
ты уверен, что в твоей программе имеется только один объект TDatabase ?
Ilg (2008-07-29 13:01:00) [4]Скорее всего - именно моя программа или что-то связанное с БД (например BDE)... Такой вывод - исходя из того, что Доступ появляется только после выхода из программы или подключения к другой БД...
Ega23 (2008-07-29 12:17:00) [5]
> Поясните...
Кто-то (и совсем не обязательно, что именно твоя программа, "держит" эту директорию).
Как пример: Открываем Delphi, новый проект, всё сохранили. Закрыли Delphi. А потом пытаемся удалить директорию с проектом (из файл-менеджера).
При определённых настройках в Delphi этого не получится, будет такой же эффект: вайлы удалились, папка пустая, но удалить её - никак.
Ilg (2008-07-29 12:13:00) [6]
> а третий вариант пробовал - "отключить базу данных"
Разумеется, я сначала отключаю... Если этого не сделать, то и сами файлы БД (таблицы) не удалятся!
ЮЮ (2008-07-29 11:27:00) [7]> Доступ появляется только после выхода из программы или подключения
> к другой БД...
а третий вариант пробовал - "отключить базу данных".
> почему так происходит, где блокируется эта папка?
Папка это и есть БАЗА, а файлы - лищь жалкие NF<KBWS
Ilg (2008-07-29 11:15:00) [8]
> Это ещё ничего не значит
Поясните...
Sergey13 (2008-07-29 11:12:00) [9]> [3] Ilg (29.07.08 10:55)
> А что тут странного? Задача нормальная - полностью удалить БД Paradox
Согласен. Киллер тоже просто работает с людьми. 8-)
> А какие еще варианты решения...?
Del или Shift+Del в любом файловом менеджере.
Ega23 (2008-07-29 10:56:00) [10]
> В том то и дело, что GetCurrentDir дает другую директорию
> (ту в которой находится программа)
Это ещё ничего не значит.
Ilg (2008-07-29 10:55:00) [11]
> CurrentDir
В том то и дело, что GetCurrentDir дает другую директорию (ту в которой находится программа)
> Какие же странные задачи при работе с БД решают люди. Не
> перестаю удивляться
2Sergey13:
А что тут странного? Задача нормальная - полностью удалить БД Paradox... А какие еще варианты решения...?
Sergey13 (2008-07-29 10:44:00) [12]Какие же странные задачи при работе с БД решают люди. Не перестаю удивляться.
Ega23 (2008-07-29 10:39:00) [13]
> где блокируется эта папка
CurrentDir