Форум: "Базы";
Текущий архив: 2003.02.13;
Скачать: [xml.tar.bz2];
ВнизВорос О 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;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.111 c