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

IMethodHandler - параметры?   Найти похожие ветки 

← →
d_oleg ©   (2007-06-25 22:30) [0]

Кто-нибудь задавал универсальные обработчики обытий с помощью интерфейса IMethodHandler из ObjAuto.pas? Хотелось бы проверить свой код, ибо возникают проблемы с передачей параметров. Параметры, передаваемые через регистры, передаются нормально, а при передаче через стек передается черте-что :(


← →
Плохиш ©   (2007-06-25 22:34) [1]


> ибо возникают проблемы с передачей параметров

Надо прямо указывать направлениое пвередачи параметров.


← →
d_oleg ©   (2007-06-26 09:33) [2]


> Надо прямо указывать направлениое пвередачи параметров.
поясни (in/out что ли?)


← →
Плохиш ©   (2007-06-26 11:06) [3]

stdcall/cdecl/...


← →
d_oleg ©   (2007-06-26 11:50) [4]

Нет, дело не в этом, дело в смещении.

Ты касался этой темы? Я почему спрашиваю, там разбираться надо.
Если я правильно понимаю, при передаче параметров внутри процедуры-обработчика события объекта TMethodHandlerInstance RegisterStub (ObjAuto.pas, строки 772-776) принимаются параметры события, причем все они, если верить отладчику, попадают в TParameters.Stack, как параметр вызова процедуры Handler, что для меня странно. Почему это происходит - не знаю :(
В-общем, если начальное смещение в стеке (ObjAuto.pas, 679) увеличивать на размер 2х регистров, то все передается как надо. Но как-то это все неправильно...



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

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



Память: 0.45 MB
Время: 0.015 c
8-1164867476
Павел123456
2006-11-30 09:17
2007.09.02
Как "склеить" Bitmap-ы в видео?


3-1178536064
Xmen
2007-05-07 15:07
2007.09.02
Пополнения автоинкрементного поля


8-1164005910
sawa
2006-11-20 09:58
2007.09.02
Преобразование mp3 в wma


15-1186050402
TStas
2007-08-02 14:26
2007.09.02
Есть у кого-нибудь TNMHTTP?


2-1186583246
dhteghjg
2007-08-08 18:27
2007.09.02
Координаты символа




   Наверх