"The EN_CHANGE notification message is sent when the user has taken an action that may have altered text in an edit control. Unlike the EN_UPDATE notification message, this notification message is sent after Windows updates the screen. The parent window of the edit control receives this notification message through the WM_COMMAND message."
I cant make it work ... i process WM_COMMAND:
movzx eax, word ptr message
.IF eax == WM_COMMAND
call process_message
.........
process_message:
cmp wparam,EN_CHANGE
jz come_on_baby
¿Whats wrong? .. other WM_COMMAND of my prog. works ok .. but EN_CHANGE fails :?
call process_message
If you're calling a subroutine from your wndproc you won't be able to access its parameters (wParam in this case), so you would have to either pass all the parameters you need to your subroutine or jmp to process_message instead of calling it.
Moreover, the notification code is located in the upper 16 bits of wParam, so you should do something like this:
mov eax,WParam
shr eax,16
cmp eax,EN_CHANGE
mov eax,WParam
shr eax,16
cmp eax,EN_CHANGE
it works! ... but i still "call" my routine ;).
but i still "call" my routine
oh yeah... my mistake. since there will be no new stackframe and ebp is used to access the parameters, a call works fine.