Я локально определяю NMHDR структуру. Вместе с сообщением WM_NOTIFY приходит lParam, содержащий адрес такой же, как я понял, но уже заполненой структуры. Как мне поместить в мою пустую локальную структуру NMHDR уже заполненную структуру, адрес которой в lParam? Простите за ламеризм.
Получить доступ к полям возвращенной структуры можно так: mov edx,lParam mov eax,[edx.NMHDR].hwndFrom Можно при помощи MemCopy скопировать кусок памяти начинающийся с адреса, указанного в lParam по адресу addr <твоя структура> и соответственно длина куска sizeof NMHDR. Или API - CopyMemory.
Действительно ламерский вопрос. Разобрался уже сам. .elseif eax==WM_NOTIFY mov ecx,lParam mov eax,(NMHDR PTR [ecx]).code cmp eax,NM_RCLICK ;...
NoName Не верно Ваша структура не пустая, она заполнена мусором, который находится в стеке от предыдущих процедур.