Конференция "WinAPI" » как перехватить LVM_SETITEMTEXT у контрола в чужом окне? [D7, WinXP]
 
  • DDorgNev © (20.11.09 02:57) [0]
    есть: чужое окно с контролом SysListView32 (сразу скажу, что получить текст из него я знаю как).
    надо: поставить хук для этого контрола на события типа LVM_
    (то, что надо делать ДЛЛ и там использовать SetWindowsHookEx - уже понятно и об этом можно не говорить).
    вопрос в том КАКОЙ тип хука подставить в первом параметре SetWindowsHookEx и соответственно, какой код должен быть в самой функции перехвата, что бы там добраться до событий LVM_
  • Leonid Troyanovsky © (20.11.09 08:36) [1]

    > DDorgNev ©   (20.11.09 02:57)  

    > SetWindowsHookEx и соответственно, какой код должен быть
    > в самой функции перехвата, что бы там добраться до событий
    > LVM_

    Если нужна модификация сообщений, то контрол надо
    сабклассировать (SetWindowLong).
    Это можно сделать одноразово, например:
    WH_GETMESSAGE & PostMessage & UnhookWindowsHookEx.
    Длл закрепляется путем LoadLibrary из хуковой процедуры.
    Выгрузка длл делается в том же порядке, после
    восстановления старой оконной процедуры.

    А если модификация не нужна, то WH_CALLWNDPROCRET,
    see also: a CWPRETSTRUCT structure.

    --
    Regards, LVT.
 
Конференция "WinAPI" » как перехватить LVM_SETITEMTEXT у контрола в чужом окне? [D7, WinXP]
Есть новые Нет новых   [134431   +11][b:0][p:0]