![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Про BDE4 и BDE5
__alex © (2007-07-14 19:22:00)Всем привет.
Вопрос по BDE. Так уж получилось, что в нашей конторе разный софт использует разные версии движка -BDE4 и BDE5. Переключаю их reg-файлами, все отлично работает.
Пишу проект, который ищет некие БД по каким то параметрам, и выдает их список. При поиске используется BDE5. А после, нужно не закрывая "поисковик" запустить другую программу, использующую BDE4.
Но тут есть проблема! Вот че я вижу после запуска bde4-программы:
---------------------------
Application Error
---------------------------
Exception EDatabaseError in module geoman.xp.exe at 00049172.
An error occurred while attempting to initialize the Borland Database Engine (error $2F01).
---------------------------
ОК
---------------------------
Но если перед запуском закрыть поисковик (bde5), то все отлично работает.
Наблюдал с помощью ProcessExplorer - после вызова mytab:=TTable.Create(nil), собственно поиска, и финального mytab.Free, все равно остаются загруженными несколько библиотек bde5. Возможно, из-за этого и не запускается софтина, использующая bde4.
Собственно, вопрос. Че делать, как быть? Может есть какая то специальная bde-функция "освобождения" программы?
RayGun (2007-07-15 20:52:00) [1]Переход на движок BDE одной версии - правильное решение. Удачи!
Но как по поводу "блин, вот будешь смеяться - был какой то косяк, но я забыл что именно :) после чего и ввели эту систему с двумя движками."
Косяк-то может опять проявиться...
__alex (2007-07-15 20:35:00) [2]ребят, всем спасибо :)
софтину переписывать не буду, это слишком.
решение кстати нашлось в виде DbiExit().
но насчет обратной совместимости bde5 обязательно еще раз проверю!
Desdechado (2007-07-15 19:46:00) [3]> файлы раскиданы по п опкам
Опечатка прямо по Фрейду...
RayGun (2007-07-15 19:36:00) [4]> Desdechado © (15.07.07 19:21) [10]
> Anatoly Podgoretsky © (15.07.07 19:32) [11]
Ужас. IMHO, переписывать сей проект надо, по-нормальному.
Anatoly Podgoretsky (2007-07-15 19:32:00) [5]> Desdechado (15.07.2007 19:21:10) [10]
> равно как и для любителей инсталляции в папку с программой.
Вероятность того, что в системе есть подобная диверсионная программа очень высока.
Desdechado (2007-07-15 19:21:00) [6]Наверняка нужные файлы раскиданы по попкам с программами вместо нормальной установки. Ну не может физически при _нормальной_ установке быть 2 БДЕ. А переключение в реестре наверняка просто меняет эти нужные пути.
БДЕ 5 поддерживает абсолютно все, что поддерживает БДЕ 4, поэтому зоопарк только для извращенцев, равно как и для любителей инсталляции в папку с программой.
DrPass (2007-07-15 12:55:00) [7]
> блин, вот будешь смеяться - был какой то косяк, но я забыл
> что именно :)
Я бы все-таки попробовал вообще снести BDE4
RayGun (2007-07-15 00:34:00) [8]Перепишите нафик эту чужую мега-бодягу нормально, времени потеряете меньше, чем на поиск и устранение хорошо забытых старых и, возможно (а скорее всего неизбежно), новых косяков. Там же, как Вы говорите, всего одна таблица. Бизнес-логика ведь должна быть формализована, или проект настолько мега-крут, что никто не знает, как он работает и что делает?
sniknik (2007-07-15 00:22:00) [9]> дык, бы б исходники...
зачем? совместимость обеспечивается не исходниками. оно просто должно работать.
__alex (2007-07-15 00:11:00) [10]
> > блин, вот будешь смеяться - был какой то косяк, но я забыл
> что именно :) после чего и ввели эту систему с двумя движками.
> это называется "залечка" вместо того, чтобы понять в чем
> болезнь, и вылечить.сами себе злобные буратины.
дык, бы б исходники...
> > да в этом мега-проекте вся БД представлена одним объектом
> TTable - он создается, используется и освобождается.что
> означает датабейс и сессия создаются автоматически и контроля
> над ними у тебя нет...
понял, спасибо за подсказку!
sniknik (2007-07-14 23:28:00) [11]> блин, вот будешь смеяться - был какой то косяк, но я забыл что именно :) после чего и ввели эту систему с двумя движками.
это называется "залечка" вместо того, чтобы понять в чем болезнь, и вылечить.
сами себе злобные буратины.
> да в этом мега-проекте вся БД представлена одним объектом TTable - он создается, используется и освобождается.
что означает датабейс и сессия создаются автоматически и контроля над ними у тебя нет...
__alex (2007-07-14 21:10:00) [12]
> Полностью совместим, я переходил с версии 3 по версию 5.
> 2, сейчас у меня стоит БДЕ от Д10, он значительно изменен,
> исправлены некоторые застарелые ошибки 1995 года, правда
> про исправление знаю со слов, но это уже другая версия БДЕ,
> выше чем 5.2.
блин, вот будешь смеяться - был какой то косяк, но я забыл что именно :) после чего и ввели эту систему с двумя движками.
> > Может есть какая то специальная bde-функция "освобождения"
> программы?базу закрыть вместе с сессией? или для гарантии
> весь датамодуль "грохать" (free) и пере создавать. хотя,
> насколько помню, при смене настроек в BDE администраторе
> он предлагает именно перезапустить программы чтобы возымело
> действие.
да в этом мега-проекте вся БД представлена одним объектом TTable - он создается, используется и освобождается.
Anatoly Podgoretsky (2007-07-14 19:53:00) [13]> sniknik (14.07.2007 19:50:02) [2]
Полностью совместим, я переходил с версии 3 по версию 5.2, сейчас у меня стоит БДЕ от Д10, он значительно изменен, исправлены некоторые застарелые ошибки 1995 года, правда про исправление знаю со слов, но это уже другая версия БДЕ, выше чем 5.2.
sniknik (2007-07-14 19:50:00) [14]вообщето, по идее, софт новой версии должен поддерживать старые. т.е. при BDE5 должно работать все что под BDE4.
> Может есть какая то специальная bde-функция "освобождения" программы?
базу закрыть вместе с сессией? или для гарантии весь датамодуль "грохать" (free) и пере создавать. хотя, насколько помню, при смене настроек в BDE администраторе он предлагает именно перезапустить программы чтобы возымело действие.
Anatoly Podgoretsky (2007-07-14 19:47:00) [15]> __alex (14.07.2007 19:22:00) [0]
Что же вы творите, два БДЕ на одной машине верный путь к хаосу.
Надо постараться исправить ситуацию, если еще возможно.
БДЕ любой версии совместим снизу вверх.