|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
11.12.2018, 22:45 | #1 |
Форумчанин
Регистрация: 11.06.2010
Сообщений: 525
|
FireBird не видит udf
Доброе время суток форумчане,
У меня FireBird 3.0 х64 Написал простенькую dll, закинул ее в директорию c Firebird - UDF (c:\Program Files\Software developments\Firebird_3_0\UDF) Код:
Объявил ее в базе: Код:
Код:
can't format message 13:896 -- message system code -4. invalid request BLR at offset 39. function mm is not defined. module name or entrypoint could not be found. Уже пытался перенесли udf в другую дерикторию, в «firebird.conf» Код:
Все началось из сторонней dll с такой же ошибкой Что может быть? Заранее спасибо за ответ Последний раз редактировалось KBO; 11.12.2018 в 22:47. |
12.12.2018, 03:56 | #2 |
Форумчанин
Регистрация: 11.06.2010
Сообщений: 525
|
Методом пробы: перенес данную библиотеку на ПК архитектурой х86 и все заработало.
Но БД у меня стоит на х64 Как быть? |
12.12.2018, 07:29 | #3 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
dll сделать 64-битную
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
12.12.2018, 14:17 | #4 |
Форумчанин
Регистрация: 11.06.2010
Сообщений: 525
|
|
12.12.2018, 14:34 | #5 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
я не разу не сталкивался, посмотрите здесь - http://docwiki.embarcadero.com/RADSt...on_Development
раздел Configuring a 64-bit Windows Application in the IDE |
12.12.2018, 14:51 | #6 |
Форумчанин
Регистрация: 11.06.2010
Сообщений: 525
|
Да, спасибо разобрался, в окне "Platforms" просто нужно добавить новую платформу для Windows x64
А почему не сталкивались? не было необходимости или по каким-то своим домыслам делаете все под х32? Да, Теперь нужно как-то dll помечать для разных ахитектур. |
12.12.2018, 15:24 | #7 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
|
12.12.2018, 16:01 | #8 |
Форумчанин
Регистрация: 11.06.2010
Сообщений: 525
|
Та я решил в свойствах файла самой dll (в "FileDescription") дописать "х64".
А то там где я занимаюсь разработкой стоит "firebird x64", а там где работает непосредственно БД - "firebird x32". С переименовкой названия файла, нужно будет в самой БД всякий раз менять, а так нет (хотя это и не наглядно). |
12.12.2018, 16:09 | #9 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
При переустановке БД на другой компьютер? в установленной БД ничего менять не надо. А так, если БД установлена 64 битная, то и DLL должна быть 64 битная. А если устанавливаете БД 32-х битную, то нужно подкладывать 32-х битную DLL Вас не смущает, что установщик 32-х битной версии называется "Firebird-3.0.4.33054_0_Win32.exe", а 64-х битной - "Firebird-3.0.4.33054_0_x64.exe" ? а своим решением Вы только усложнили жизнь тому, кто будет устанавливать/сопровождать/переносить вашу систему на другой комп. имхо, разумеется. Впрочем, это ваше дело. Хозяин - барин! |
|
12.12.2018, 16:49 | #10 | |
Форумчанин
Регистрация: 11.06.2010
Сообщений: 525
|
Цитата:
Таким образом, если я буду тягать базу с х32 на х64 (и библиотека будет по разному называться), то тогда мне и в БД предется переименовывать название библиотеки (чтоб она подхватывалась базой) |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ChromeDriver не видит элементы. А GeckoDriver видит. | DedPerded | Общие вопросы Web | 2 | 17.08.2018 12:22 |
Спарсить то что видит снифер, но не видит браузер... | FleXik | Общие вопросы Delphi | 8 | 11.12.2012 00:44 |
udf для firebird | Sparky | Помощь студентам | 5 | 15.11.2012 17:01 |
Firebird.Не могу подключить UDF. | -COREY- | БД в Delphi | 0 | 08.05.2012 15:15 |
Ошибка при декларировании функции в Firebird из UDF | shurik_7866 | БД в Delphi | 1 | 30.07.2007 08:55 |