Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.13;
Скачать: CL | DM;

Вниз

Ворос О BDE   Найти похожие ветки 

 
Демонов Е.В. ©   (2003-01-27 13:01) [0]

как своей программе указать что нужно использовать BDE которые находся в каком-то каталоге . т.е. чтобы программы не использовала BDE обозначенные в реестре параметром HKEY_LOCAL_MACHINE\Software\Borland\Database Engine\DLLPATH ?


 
Демонов Е.В. ©   (2003-01-27 13:18) [1]

а ТО НАПРИМЕР происходит такое - стоит DELPHI 3 и программа написанная на DELPHI 6 со своими BDE которые находятся в каталоге с прогрпммой- естественно програма не работает если не удалить путь HKEY_LOCAL_MACHINE\Software\Borland\Database Engine\DLLPATH и приходится хитрить через батники.

P.S. просто способ сразу после запуска программы перед открытием базы данных убирать этот ключ в реестре а перед завершением его восстанавливать как то не очень мне нравится.


 
Соловьев ©   (2003-01-27 13:21) [2]

Перейди на Д6. Или откажись от BDE и используй ADO.


 
Карелин Артем ©   (2003-01-27 13:25) [3]

У меня одно время стояли 3,5,6. Так вот все нормально работало, если ставить сначала 3, потом 5 и в конце 6. Строго по порядку.


 
Карелин Артем ©   (2003-01-27 13:33) [4]

Камень в сторону ado: сделал прогу с использованием ADo. Эта хрень на разных компах имеет разные названия драйверов и на разных языках. В итоге прога работает у меня в win"2k server, но не работает в Win"me и 98.
Если работает в win"98PE, то на сервере не работает.
Выход такой: использовать прямой доступ к базам. Для dbf есть компонент tdbf.


 
Kuusiniemi ©   (2003-01-27 13:37) [5]

> Карелин Артем ©
"Камень в сторону ado"

Это камень не в сторону ADO, а в сторону ODBC скорее.


 
Карелин Артем ©   (2003-01-27 13:45) [6]

Согласен в принципе.


 
Anatoly Podgoretsky ©   (2003-01-27 13:47) [7]

Порядок установки версий Дельфи значения не имеет, так как напрямую версия Дельфи, Д2 нормально работает с версией 5.2
БДЕ это вообще отдельный продукт, просто приложенный к Дельфи, к каждой версии свой, но работать надо на версии, совместимой со старшей версией Дельфи, тогда будет все нормально.

Проблема возникла видисо в том, что Демонов Е.В. вилимр не умеет делать апдейт БДЕ


 
Демонов Е.В. ©   (2003-01-27 13:47) [8]

2Соловьев © (27.01.03 13:21)
>>Перейди на Д6. Или откажись от BDE и используй ADO.

Нельзя программа уже написанна. Переписывать её нет времени. Да и ADO я не знаю достаточно что бы его использовать.


 
Reindeer Moss Eater   (2003-01-27 13:49) [9]

т.е. чтобы программы не использовала BDE обозначенные в реестре параметром HKEY_LOCAL_MACHINE\Software\Borland\Database Engine\DLLPATH

Эти Dll грузит не программа, а Windows. А ищет она их по вполне определенному списку путей.


 
Демонов Е.В. ©   (2003-01-27 14:12) [10]

Reindeer Moss Eater
>>Эти Dll грузит не программа, а Windows. А ищет она их по вполне определенному списку путей.

Может и так но вопрос не в этом.
Как моей программе указать какие BDE использовать но это явно не те которые заданы параметром HKEY_LOCAL_MACHINE\Software\Borland\Database Engine\DLLPATH


 
Pat ©   (2003-01-27 14:34) [11]

>Демонов Е.В. © (27.01.03 14:12)
Кинь BDE в папку с exe"шником - будет использовать их


 
Демонов Е.В. ©   (2003-01-27 14:40) [12]

2Pat © (27.01.03 14:34)
>>Кинь BDE в папку с exe"шником - будет использовать их

дА ТОЛЬко если параметр HKEY_LOCAL_MACHINE\Software\Borland\Database Engine\DLLPATH отсутствует или равен "" иначе программа начинает использовать BDE указанные DLLPATH





 
Anatoly Podgoretsky ©   (2003-01-27 14:46) [13]

Pat © (27.01.03 14:34)
Явно выраженное вредительство


 
Pat ©   (2003-01-27 14:51) [14]

>Демонов Е.В. © (27.01.03 14:40)
У меня работает...


 
Pat ©   (2003-01-27 14:51) [15]

>Anatoly Podgoretsky © (27.01.03 14:46)
Почему?


 
Anatoly Podgoretsky ©   (2003-01-27 14:55) [16]

Это верный путь по приведению других программ, использующих БДЕ, в нерабочее состояние, к тому же трудно обнаруживаемый.


 
Демонов Е.В. ©   (2003-01-27 15:04) [17]

>>Pat © (27.01.03 14:51)
>>У меня работает...


У Меня тоже работает - моя программа поставляется с BDE которые ей нужны - помещаются они в тот же каталог что и exe (при установке) и никаких записей о BDE в реест программа не делает. И если вдруг на компе стоит программа использующая более старые BDE и в реестре прописан (может быть последней) путь к BDE в параметре DLLPath то всё - программа моя начинает испоьзовать эти старые DBE.

Можно конечно сделать так чтобы моя программа брала и прописывала свой путь в DLLPAth но ведь она постовляется только с необходимым ей набором BDE и тогда други программы могут отказать работать. Так было например у меня когда я поставил DELPHI6 а потом программу написанную на DELPHI3 - и тогда просто в DELPHI6 отказали работать компоненты для работы с BD.

Так как же быть ?


 
Демонов Е.В. ©   (2003-01-27 15:13) [18]

2Anatoly Podgoretsky
>>Это верный путь по приведению других программ, использующих >>БДЕ, в нерабочее состояние, к тому же трудно обнаруживаемый.

Ерунда - так программу не испортить . Если есть параметр DLLPath программа будет использовать его ДЛЯ BDE. Если нет то те BDE которые находятся вместе с экзешником в каталоге..

Хотя возможно не те которые находятся вместе с экзешником в каталоге а те которые находятся в текущем каталоге - надо будет проверить.

А Если нет ни DLLPATH не DBE c EXE тогда прога просто не будет работать.

А испортить так это не серьезно





Страницы: 1 вся ветка

Текущий архив: 2003.02.13;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.012 c
1-38355
BLooDMaN
2003-02-03 20:01
2003.02.13
Глюк С PageControl


1-38253
aspen
2003-02-05 14:56
2003.02.13
как корректно зарегистрировать свое расширение?


7-38608
Gayrus
2002-12-12 14:18
2003.02.13
Подскажите адрес COM порта


1-38189
Andrey-k
2003-02-02 22:45
2003.02.13
Help. Exel. Как сделать WorkBook в Read-Only или запаролить?


14-38529
race1
2003-01-26 14:49
2003.02.13
com