powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / UDF или как оно бывает!
12 сообщений из 12, страница 1 из 1
UDF или как оно бывает!
    #40008751
KonstFB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго дня!

Входные данные: FB:2.5+D7+win10 64

Решил соорудить свою удф, набросал быстренько на делфи
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
library PrjLizardUDF;

uses
  Windows;

  function Sleep( inp: integer ): Integer; cdecl; export;
  begin
    Result := inp;
    Sleep( inp );
  end;

  exports
    Sleep;

begin

end.



Довольный положил сие творение в \ProgrFiles\FB\udf\

Гоууу в IbExpert - зарядил - " declare external function Sleep Integer Returns Integer by value entry_point 'Sleep' module_name 'PrjLizardUDF'" в результате "Script execute successfull"

и при первой же компиляции процедуры, где было
Код: sql
1.
    execute procedure sleep( 1 ) returning_values RSLEEP;



Получаю авторcan't format message 13:796 -- message file C:\Windows\firebird.msg not found.
Dynamic SQL Error.
SQL error code = -204.
Procedure unknown.
SLEEP.


... рыл сеть, пробовал играться с
UdfAccess = Restrict UDF , но все тщетно.

Кто, что порекомендует ?!
...
Рейтинг: 0 / 0
UDF или как оно бывает!
    #40008762
dennis-r
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KonstFB,

exterrnal function <> stored procedure
...
Рейтинг: 0 / 0
UDF или как оно бывает!
    #40008765
KonstFB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dennis-r,

Поправил
Код: sql
1.
rsleep = sleep( 1 ) ;



И споткнулся с BLR.

Если запускать в скл скрипте
Код: sql
1.
    select sleep( 1 ) from RDB$DATABASE


Функция все-равно не видима.
...
Рейтинг: 0 / 0
UDF или как оно бывает!
    #40008768
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KonstFB,

разрядность UDF и Firebird совпадает?
Или спрошу по другому разрядность Firebird какая?
Вы уверены что от вашей UDF есть польза?
...
Рейтинг: 0 / 0
UDF или как оно бывает!
    #40008776
KonstFB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денис,

авторразрядность UDF и Firebird совпадает?
авторИли спрошу по другому разрядность Firebird какая?
Да, система 64 и ФБ 64

авторВы уверены что от вашей UDF есть польза?
Пока нужно повесить пользователя на некоторое время. И вроде как в плане времени цп самый дешевый вариант!
Но это пока эксперименты - в любом случае - с удф стоит разобраться, дабы иметь в запасе навык.
...
Рейтинг: 0 / 0
UDF или как оно бывает!
    #40008778
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.10.2020 11:26, KonstFB пишет:
> Да, система 64 и ФБ 64

а компилятор?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
UDF или как оно бывает!
    #40008784
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KonstFB,

не надо играть с регистром
exports sleep;
entry_point 'sleep'
если всё равно не помогает - надо смотреть processmonitor, грузится-ли dll.
кроме того, если 2.5 superserver, то эта функция поставит колом весь процесс fbserver.exe, для всех коннектов.

p.s. масса примеров работающих функций есть на ibase.ru.
...
Рейтинг: 0 / 0
UDF или как оно бывает!
    #40008791
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
KonstFBВходные данные: FB:2.5+D7+win10 64


D7 - 32 битный.
...
Рейтинг: 0 / 0
UDF или как оно бывает!
    #40008793
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ъъъъъ,

глазастый. Конечно не будет работать.
KonstFB -разрядность dll должна соответствовать разрядности Firebird.
...
Рейтинг: 0 / 0
UDF или как оно бывает!
    #40008848
KonstFB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо всем большое, что откликнулись - Embarcadero® Delphi 10.2 -> Target PLatform.Add(64)->Compile ... и сервер удачно повесился ... благо все локально автор:)
...
Рейтинг: 0 / 0
UDF или как оно бывает!
    #40008862
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KonstFBи сервер удачно повесился

Везунчик. Мог бы и просто упасть. Не надо "быстренько набрасывать" от балды, метод тыка
тут не работает.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
UDF или как оно бывает!
    #40008896
Polesov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KonstFB,

А разве входной параметр inp не должен передаваться, как var ?
Код: pascal
1.
function Sleep( var inp: integer ): Integer; cdecl; export;
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / UDF или как оно бывает!
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]