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

Как мне избечь ошибок при поодключении DLL, содержащей функцию   Найти похожие ветки 

← →
kss1515   (2002-08-18 20:27) [0]

Здравствуйте,

Есть к вам такой вот вопрос:
Как мне избечь ошибок при поодключении DLL, содержащей функцию
GetSimpleText(LangRus:Boolean):PChar, используя такой код:

var
Form1: TForm1;
GetSimpleText:function(LangRus:boolean):PChar;
LibHandle:THandle;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
@GetSimpleText:=nil;
LibHandle:=LoadLibrary("mydll.dll");
If LibHandle>=32 then
@GetSimpleText:=GetProcAddress(LibHandle,"GetSimpleText");
If @GetSimpleText<>nil then ShowMessage(StrPas(GetSimpleText(True)));
end;

Ошибка заключается в следующем: В функцию GetSimpleText в любом случае
передается параметр False (или вообще не передается, скорее всего,
глюк при его передаче), а через
несколько секунд программа вообще вылетает, сообщая об "Ошибке в
модуле KERNEL32".
У меня система Delphi 5.0 Build 5.62 Enterprise, ОС Windows ME

Заранее спасибо за помощь!
--
С уважением,
KSS!


← →
Юрий Зотов ©   (2002-08-18 22:00) [1]

Похоже, причина в отсутствии stdcall и/или в неверном выделении/освобождении памяти под строку PChar.



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

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



Память: 0.45 MB
Время: 0.015 c
14-78650
Nox
2002-10-01 19:47
2002.10.24
<<<Я ДОБАВИЛ СВОЙ ВОПРОС В ФОРУМ, А ОН УШЁЛ!>>>


1-78358
Radiy
2002-10-14 11:26
2002.10.24
Знакогенератор клавиатурный


1-78396
Эрик
2002-10-12 09:37
2002.10.24
Edit.Text?


1-78425
neXt
2002-10-15 13:05
2002.10.24
Вывод HTML текста


3-78273
maxim2
2002-10-01 12:26
2002.10.24
Как узнать сколько таблиц в базе если знаеш псевдоним базы




   Наверх