![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите с UDF [D5, IB4.x]
XanderMan © (2002-03-27 20:24:00)Сразу оговорюсь: HELPом по IB обчитался уже по самое некуда.
Насколько я понимаю UDF - это функции, определенные в DLL. DLL можно написать на Delphi, добавив к экспортируемым функциям спецификатор cdecl для того, чтобы параметры передавались справа налево, как в С. После этого компилируем библиотеку и помещаем готовый DLL в C:\WINDOWS\SYSTEM. Затем в IB выдаем команду
DECLARE EXTERNAL FUNCTION...
и все по идее должно работать. Проблема в том, что при попытке вызвать созданную функцию IB пишет что-то вроде "неправильная точка входа или файл библиотеки":((
Кто знает, что я делаю неправильно, помогите, пожалуйста.
Desdechado (2002-03-28 11:35:00) [1]DECLARE EXTERNAL FUNCTION FNAME
INTEGER
RETURNS INTEGER BY VALUE
ENTRY_POINT "fname"
MODULE_NAME "example.dll";
XanderMan (2002-03-27 22:08:00) [2]Спасибо за <IB Root>\BIN:)
Завтра попробую.
XanderMan (2002-03-27 20:42:00) [3]DECLARE EXTERNAL FUNCTION FNAME
INTEGER
RETURNS BY VALUE INTEGER
ENTRY_POINT "fname"
MODULE_NAME "example.dll";
OlegE (2002-03-27 20:38:00) [4]Для 4 и 5 - <IB Root>\BIN
Иван Шихалев (2002-03-27 20:34:00) [5]Нужно еще посмотреть, куда помещать готовую DLL. Во всяком случае IB6 точно не будет ее искать в WINDOWS\SYSTEM, как это у четверки - я не знаю. Возможно <IB Root>\Lib.
И еще бы не мешало привести DECLARE EXTERNAL FUNCTION полностью, раз у тебя такая ошибка.