"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_messageIf 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 routineoh yeah... my mistake. since there will be no new stackframe and ebp is used to access the parameters, a call works fine.