Could someone be so kind to point me toward some information on how to use these?

If I am not mistaken I can use some extra space there to store some handles & settings to whereever that thing allocates that extra amount of space.

Thanks.
Posted on 2005-04-10 16:03:00 by JimmyClif
All I know that you must follow in order to describe the Window Classes. Windows Classes Count Byte Clear Extra and Windows Extra.
Other than that I don't know but especially that's from the WinAPI.
Posted on 2005-04-10 16:21:39 by Xor Stance
Figure out the cbWndExtra :)

Use as cbWndExtra = 4*4 gives me 4 additional dwords to add to any WindowProc using SetWindowLong, which is exactly what I was looking for.

;"Setting vars"
invoke SetWindowLong,hWnd,0,10
invoke SetWindowLong,hWnd,4,20
invoke SetWindowLong,hWnd,8,30
invoke SetWindowLong,hWnd,12,40
;"Retrieving vars"
invoke GetWindowLong,hWnd,0
eax = 10
invoke GetWindowLong,hWnd,4
eax = 20
invoke GetWindowLong,hWnd,8
eax = 30
invoke GetWindowLong,hWnd,12
eax = 40

Found it on this page: http://www.catch22.net/tuts/custctrl.asp Looks pretty neat.
Posted on 2005-04-10 18:44:45 by JimmyClif
Just be aware that the builtin dialog boxes already use the cbWndExtra bytes.

cbWndExtra is per window. (SetWindowLong and GetWindowLong)
cbClassExtra is per window class. (SetClassLong and GetClassLong)
Posted on 2005-04-10 19:00:34 by tenkey
:) I have a question does masm supports most APIs from C? If I'm not mistaken, Masm does that for us. With Jibz runtime library you can compile C. Looks like we can even higher than C. 
Posted on 2005-04-10 19:43:04 by Xor Stance
Jimmy,

You tend to use the extra memory to store settings that are specific to the window. Tenkey has a good point that some dialog code already uses the extra memory in part and you need to keep in mind that early versions of 32 bit Windows had a limit of 40 bytes from memory.
Posted on 2005-04-10 21:31:58 by hutch--
Thanks for the input guys.
Posted on 2005-04-10 22:00:13 by JimmyClif