Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.01.2022, 20:51   #1
fill-forty
Новичок
Джуниор
 
Регистрация: 05.01.2022
Сообщений: 2
По умолчанию SQLFirebird 3.0 + Delphi 10.4

Добрый день. Вопрос такого характера, как подключиться к Firebird Через IbDatabase.

На момент написания статьи каким-то чудом, эта связка у меня заработала. Причём без всякий манипуляций. Но может повторится с нова. Плюс, может кому-то что-то поможет из того что я сделал.

Значит, Firebird и delphi используют одни и те же файлы — бибилиотеку для работы с базой данных и файл ответов.

Но у Птицы оно называется firebird.msg и fbclient.dll
А у interbase и delphi interbase.msg и gds32.dll

Всё бы ничего, но версии библиотек могут приводить к ошибкам обращения, по этому, нужно вставить туда надо нужные библиотеки и прописать пути. К примеру, для делфи — нужно заменить файликами от Птицы и переименовать только бибилиотеки их как будто это файлы родные.

Поэтому, чтобы заработало, нужно аккуратно залезть в систему и убрать от туда все firebird.msg и fbclient.dll и interbase.msg и gds32.dll на время разарботки (нетрогать папку сервера птицы естественно).

А в пути C:\Windows\SysWOW64\ и C:\Windows\System32\ кинуть gds32.dll и interbase.msg в зависимости от разрядности виндовс.

Однако!
У меня виндовс 10 64бит но заработало тогда когда я закинул библы в C:\Windows\SysWOW64\ однако и делфи и Птица 32 бита. Почему так? Потому что IBExpert только 32 бита. Пришлось ставить Птицу на 32. Ну и Делфи за одно.

Из экспериментов:
Как это всё завязано и работает не понятно, Пробовал IBEXPERT. Он подключает к базе когда суёшь ему fbclient.dll из папки сервера. А с C:\Windows\SysWOW64\ (как и слюбой другой куда установлены библиотеки) - говорит что username ему не тот (потому что в паке сервера есть куча плюх по установке соединения, а оно их не видит).
По этому:
Для эксперимента создал папку на С:/11/ и насыпал туда от души половину файлов из папки сервера Птицы + необходимую библиотеку. Прописал в Экперте. И О чудо! Подключение удалось. Если насыпать тот же ворох в C:\Program Files (x86)\Embarcadero\Studio\21.0\bin\ тоже прога увидит и заработает. Но это не правильно.

Последне что я сделал это переустановил Firebird в режим запуска — службы, и выставил все которые можно галки при установке. Скоприровал два файла в SysWOW64, ну и выдрал всё старые библиотеки. На сколько это протянет не знаю. Если ест у кого идеи, добавляем.
С уважением.
fill-forty вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача string как массива байт (из Delphi 7) в dll (из Delphi 10.2) KBO Общие вопросы Delphi 4 07.04.2020 03:41
Не изменяется интерфейс моей программы при переходе с Delphi 7 на Delphi 2010 Elvisnya Общие вопросы Delphi 3 28.04.2011 15:59
Rad Studio 2011 XE: новое в Delphi, C++ Builder, RadPHP и Delphi Prism savva-paladin Софт 18 02.10.2010 20:24
Delphi. Как нарисовать в Delphi два движущиеся шара с определенной скоростью? redred Общие вопросы Delphi 10 11.12.2007 10:43
Как открыть БД, написанную в Delphi если нf другой машине Delphi нет? dagarik БД в Delphi 7 22.10.2007 17:54