The MASM Forum Archive 2004 to 2012

General Forums => The Campus => Topic started by: xiahan on April 18, 2012, 06:08:20 PM

Title: how to make this valid
Post by: xiahan on April 18, 2012, 06:08:20 PM


assume eax:ptr CWPSTRUCT
.if [eax].message == WM_HOOKEX && [eax].lParam != 0



Title: Re: how to make this valid
Post by: qWord on April 18, 2012, 06:17:28 PM
how is WM_HOOKEX declared?
If it is variable, it must load into a register for compare.
Title: Re: how to make this valid
Post by: xiahan on April 18, 2012, 06:28:36 PM


WM_HOOKEX dd 0

PrivateMsg db "WM_HOOKEX_KK",0

invoke RegisterWindowMessage,addr PrivateMsg

mov WM_HOOKEX,eax



it was declared like this
Title: Re: how to make this valid
Post by: jj2007 on April 18, 2012, 06:43:52 PM
Quote from: qWord on April 18, 2012, 06:17:28 PM
how is WM_HOOKEX declared?
If it is variable, it must load into a register for compare.

Like this:

assume eax:ptr CWPSTRUCT
mov edx, WM_HOOKEX
.if [eax].message == edx && [eax].lParam != 0
nop
.endif
Title: Re: how to make this valid
Post by: xiahan on April 18, 2012, 06:45:38 PM
it works :U