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

подменить GWL_WNDPROC   Найти похожие ветки 

← →
GuAV ©   (2004-05-22 15:09) [0]

Я хочу подменить GWL_WNDPROC
нужно ли его потом возвращать обратно?
Меняют ли его какие либо методы и свойства PControl и если да, то какие?
ЗЫ - про OnMessage знаю, FAQ не предлагайте.


← →
SPeller ©   (2004-05-22 15:38) [1]

1) Возвращать обратно обязательно.
2) Нет.


← →
GuAV ©   (2004-05-22 17:13) [2]

SPeller ©   (22.05.04 15:38) [1]

2) Спасибо.
1) Хорошо, хотя не понял зачем вот это пработает и без возвращения:
var oldwnd: integer;

function MyWnd(Wnd, Msg, wParam, lParam: Integer): LRESULT; stdcall;
begin
 Result:=CallWindowProc(Pointer(oldwnd),Wnd,Msg,wParam,lParam);
end;

...
 oldwnd:=SetWindowLong(Form.Handle,GWL_WNDPROC,integer(@MyWnd));
...


← →
SPeller ©   (2004-05-22 19:36) [3]

Может случиться так, что объект уже уничтожится, а твоя процедура каким-то раком вызовется. И ничего хорошего от этого не произойдёт.


← →
GuAV ©   (2004-05-22 23:25) [4]

SPeller ©   (22.05.04 19:36) [3]
Понял. Спасибо!



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

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



Память: 0.45 MB
Время: 0.026 c
14-1103618002
Чеширский_Кот
2004-12-21 11:33
2005.01.09
Опрос: За что я уважаю Borland?


1-1103647618
Илья
2004-12-21 19:46
2005.01.09
IOResult = 103


9-1093008860
Navi1982
2004-08-20 17:34
2005.01.09
Картинку в чужой кадр!!!


14-1103354543
ms
2004-12-18 10:22
2005.01.09
Неужели я так плохо знаю C++, или как это можно объяснить?


6-1098444992
Ramon
2004-10-22 15:36
2005.01.09
Проверка мыла на наличие новых писем




   Наверх