Ребята... может я не по теме... но тем не менее Delphi очень тесно связан с InterBase-ом.
Вот, поймал глюк при использовании простейшей функции, хранящейся в DLL. Причем и DLL сам состряпал.
Тут исходник не напишешь, но если кто сможет помочь, то вышлю (200Кб). Позарез надо выяснить, в чем дело... у меня на этом большая библиотека стоит.
И еще...
Кто-нибудь может объяснить чем отличаются эти способы вызова функции из DLL:
1.
function MyFunc(I: Integer): Integer: external 'MY.DLL' name 'MYFUNC';
...
a := MyFunc(b);
2.
type
TMyFunc = function(I: Integer): Integer;
var
MyFunc: TMyFunc;
hDLL: THandle;
begin
hDLL := LoadLibrary('MY.DLL');
MyFunc := TMyFunc(GetProcAddress(hDLL,'MYFUNC'));
FreeLibrary(hDLL);
end;
Кто поможет? А?
Delphi и DLL?
Re: Delphi и DLL?
stdcall; //имеется ?? или другая директива?Zhur писал(а): И еще...
Кто поможет? А?
Re: Delphi и DLL?
Спасибо за отзывы.
Да дело в том, что функция возвращает String.
Думаю, что что-то с этим связано.
Директива stdcall - имеется.
Функция свою работу делает нормально... но сразу после ее вызова выходит "Invalid pointer operation".
Да дело в том, что функция возвращает String.
Думаю, что что-то с этим связано.
Директива stdcall - имеется.
Функция свою работу делает нормально... но сразу после ее вызова выходит "Invalid pointer operation".