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

При передаче параметра в DLL вылетает AccessViolation   Найти похожие ветки 

 
alexey_mas ©   (2007-01-15 18:17) [0]

Здравствуйте!
В приложении с помощью 2-х кнопок вызываю DLL

procedure TForm2.Button1Click(Sender: TObject);
var
GetSimpleText1:function(): integer;
LibHandle: THandle;
begin
 @GetSimpleText1 := nil;
 LibHandle := LoadLibrary("shema.dll");
 if LibHandle >= 32 then begin
 @GetSimpleText1:=GetProcAddress(LibHandle,"GetSimpleText1");
 if @GetSimpleText1 <> nil then
 GetSimpleText1();
 end;
 FreeLibrary(LibHandle);

end;



procedure TForm2.Button2Click(Sender: TObject);
var
GetSimpleText2:function(test:integer): integer;
LibHandle: THandle;
begin
 @GetSimpleText2 := nil;
 LibHandle := LoadLibrary("shema.dll");
 if LibHandle >= 32 then begin
 @GetSimpleText2:=GetProcAddress(LibHandle,"GetSimpleText2");
 if @GetSimpleText2 <> nil then
 GetSimpleText2(1);
 end;
 FreeLibrary(LibHandle);
end;


При обработке 2-й кнопки вылетает access violation
в dll функции описал так:


function GetSimpleText2(test:integer): integer; stdcall;
begin
  ShowMessage(IntToStr(test));
  Result := 1;
end;

function GetSimpleText1(): integer; stdcall;
begin
  ShowMessage("hello");
  Result := 1;
end;
exports GetSimpleText2,GetSimpleText1;

Притом Message вот здесь  ShowMessage(IntToStr(test));
после нажатия 2-й кнопки вместо передаваемой 1 кидает 5-ти значное число.

Где туплю? из-за чего AcessViolation вылетает?


 
alexey_mas ©   (2007-01-15 18:19) [1]

админу - сорри промазал с разделом форума - если можно то переместить в Общие вопросы


 
Johnmen   (2007-01-15 18:25) [2]

А где там вызов GetSimpleText1 "после нажатия 2-й кнопки"?


 
alexey_mas ©   (2007-01-15 18:30) [3]

Спасибо уже помогли разобраться в другом окне :)

я вызываю разными кнопками разные функции
первой кнопкой функцию без параметра
второй функцией с параметром

нужно было здесь
procedure TForm2.Button2Click(Sender: TObject);
var
GetSimpleText2:function(test:integer): integer;
stdcall добавить



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

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



Память: 0.45 MB
Время: 0.027 c
3-1166345336
VadimSpb
2006-12-17 11:48
2007.03.11
DBCC CHECKDB, DBCC DBREINDEX


2-1171788207
Egoist
2007-02-18 11:43
2007.03.11
Tray Icon - Msg, WM_USER, Msg


15-1171396436
Суслик
2007-02-13 22:53
2007.03.11
Вопрос по Excel - автоопределение высоты ряда


15-1170945949
Галинка
2007-02-08 17:45
2007.03.11
HELP!!! Кто-то шарит в CATIA V5


1-1168784135
The X
2007-01-14 17:15
2007.03.11
Корректная работа с CHM-хелпами в Delphi5.




   Наверх