Вниз
Скачать: 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.031 c
2-1172047781
webpauk
2007-02-21 11:49
2007.03.11
Сообщение для Timage


6-1159806707
vedm
2006-10-02 20:31
2007.03.11
TIdMultiPartFormDataStream и большие файлы.


2-1171722532
НОВИЧЕК2007
2007-02-17 17:28
2007.03.11
добавить / удалить строку


3-1165990587
Алексей В.
2006-12-13 09:16
2007.03.11
QReport, текст после бенда Detail


2-1171977401
vitv
2007-02-20 16:16
2007.03.11
Ошибка при DBGrid12.SelectedField.FocusControl




   Наверх