Вниз
Скачать: CL | DM;

FireBird и UDF... Проблемы?   Найти похожие ветки 

 
sdn ©   (2002-01-30 11:34) [0]

Доброго времени суток, уважаемые!

Описание проблемы:
Firebird версии 1.0.0.706 (в общем, последний на 25 января 2002 update к RC2).
В скрипте делаю объявление UDF
DECLARE EXTERNAL FUNCTION GetFullName
CSTRING(100),
CSTRING(6),
CSTRING(55),
CSTRING(55),
CSTRING(55),
CSTRING(6)
RETURNS CSTRING(170) ENTRY_POINT "GenerateFormattedName" MODULE_NAME "IBUDFLib.dll";

При построении базы это проходит (Ok).

Использую эту UDF...

ALTER TABLE CHIEFS ADD CH_FULL_NAME COMPUTED BY (GETFULLNAME("\\ \P\\ \F\\ \M\\\L\, \\S", CH_NAME_PREFIX, CH_NAME, CH_MIDDLE_NAME, CH_LAST_NAME, CH_NAME_SUFFIX));
И вот тут ошибка (Invalid token. Invalid request BLR at offest 2. Function GETFULLNAME is not defined, module name or entrypoint could not be found).

Вопрос: Почему? В чём проблема, собственно?

P.S.
IBUDFLib.dll - располагаю и в каталоге FireBird\Bin и в Windows\System32 (Windows\System) всё едино.
IBUDFLib.dll - писал сам (Delphi 6),.. хотя... какая разница...
На IB 5.6 такое проходит на ура...

С наилучшими пожеланиями,
Дмитрий
ICQ: 58245670
Odigo: 6549174


 
Alexandr ©   (2002-01-30 11:56) [1]

надо в Firebird/UDF положить.
А эта твоя UDF другие dll не использует? А если использует, то видит ли она их?


 
sdn ©   (2002-01-31 10:06) [2]

>> Alexandr
Нет, другие dll не используются... там полная реализация функции...
Про Firebird\UDF... Ok... попробую... это хорошая мысль Ж-) Результат опубликую.


 
Alexandr ©   (2002-01-31 10:25) [3]

да-да.
написамо же что UDF должны быть в каталоге UDF


 
sdn ©   (2002-01-31 15:03) [4]

>> Alexandr
Is`t WORKING !!! Всё, спасибо огромное. Нужно размещать dll с UDF в каталоге FireBird\UDF. Всё круто.


 
Alexandr ©   (2002-02-01 07:15) [5]

дык ты еще на этот каталог права на доступ дай только для FB,
чтоб нехорошии люди твои dll не перезаписали, новых не записали, хакингом не занимались- это просто сделали возможность для закрытия дыры- от хакеров, которые записывали свою dll, потом вызывали ее из SQL - и доступ к серваку получали.
Вот оно как... и для чего



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.006 c
1-79315
shelest
2002-02-06 12:20
2002.02.25
Delphi и Informix


1-79365
DimaIv
2002-02-08 16:38
2002.02.25
Как правильно обьявлять функции при помощи Overload


3-79304
alexts
2002-01-30 13:35
2002.02.25
Распределенные базы данных


4-79502
ZEE
2001-12-26 13:30
2002.02.25
Иконка в API-приложении


1-79357
petyun
2002-02-08 13:37
2002.02.25
клавиши вправо-влево в ListBoxe




   Наверх