Зависает UDF на FB2, в FB1.5 все ОК!

Совместимость InterBase, Firebird, Yaffil между собой и по версиям

Модераторы: kdv, Alexey Kovyazin

Ответить
Evmed
Сообщения: 3
Зарегистрирован: 31 мар 2006, 20:22

Зависает UDF на FB2, в FB1.5 все ОК!

Сообщение Evmed » 25 июл 2006, 13:51

есть функция в библиотеке объявлена и реализована

function MyMessageBox(Msg: PChar):Integer; cdecl; export;

function MyMessageBox(Msg: PChar):Integer;
begin
MessageBox(MSGF_DIALOGBOX, PChar(Msg), PChar('Ошибка'), MB_OK OR MB_ICONERROR OR MB_TOPMOST);
end;
которая просто выводит стандартное сообщение.
на SQL прописываю

DECLARE EXTERNAL FUNCTION F_MYMESSAGEBOX
CSTRING(255) CHARACTER SET NONE
RETURNS INTEGER BY VALUE
ENTRY_POINT 'MyMessageBox' MODULE_NAME 'mylib.dll';


при вызове из процедуры типа
i=F_MYMESSAGEBOX('покажи сообщение');
в FB1.5 все ОК: на сервере окно с сообщением
в FB2 начинается и НЕ ПОКАЗЫВАЕТСЯ ВИЗУАЛЬНОЕ ОКНО
как я понял оно где-то ждет "ОК" но нигде нет (и в процессах тоже)
В чем проблема, знатоки?

dimitr
Разработчик Firebird
Сообщения: 888
Зарегистрирован: 26 окт 2004, 16:20

Сообщение dimitr » 25 июл 2006, 14:03

в галке "interact with desktop" у сервиса?

Evmed
Сообщения: 3
Зарегистрирован: 31 мар 2006, 20:22

Сообщение Evmed » 25 июл 2006, 14:37

dimitr писал(а):в галке "interact with desktop" у сервиса?
КОНЕЧНО НЕТ! Просто сервис FB2.0 ставится без этой галки.
Спасибо. Все ОК.

dimitr
Разработчик Firebird
Сообщения: 888
Зарегистрирован: 26 окт 2004, 16:20

Сообщение dimitr » 25 июл 2006, 14:53

Evmed писал(а):Просто сервис FB2.0 ставится без этой галки.
а это смотря как ставить :-)

Ответить