hey ho!


I've got a Dialog with various Controls on it. Just for the need of this example, let's say we talk about:
#define IDC_example 1001

IDC_example to EDITTEXT.

The Dialog where this Control is on is processed by:
BOOL CALLBACK DlgProcModalless( HWND hwnd, UINT Msg, WPARAM wParam, LPARAM lParam )


I woudl like to have possibility to correct the user's entry on this Control, let's say, so that the program automatically changes user's entry from "x" to "z" and would not allow to enter e.g. "a".
MSDN says:
EN_UPDATE
WPARAM wParam;
LPARAM lParam;

Parameters
wParam - The LOWORD contains the identifier of the edit control. The HIWORD specifies the notification code.
lParam - A handle to the edit control.

But how can i get it work for my particular example of DlgProcModalless?

I've started typing the code (I don't even know if what i've typed so far is correct):
BOOL CALLBACK DlgProcModalless( HWND hwnd, UINT Msg, WPARAM wParam, LPARAM lParam )
{
switch( Msg ) {
case EN_UPDATE:
{
switch(LOWORD(lParam))
{
case 1001: //lub IDC_przyklad:
// here is the validation, however when i put the MessageBox just to find out if this part of code is called at all, unfortunatelly i've learnt that no pop-up message appears while modyfying the EDITTEXT example.


I quite understand the use of notification codes but only up to the lParam / wParam level, but how to get to LOWORD, HIWORD...?
In this particular example how to get the HWND to the particular Control and how to find out that the user typed e.g. "x" from the keyboard?

woudl be grateful for help!

cheers
berkov
.