Windows Callback messages decoding

Share your advanced PureBasic knowledge/code with the community.
User avatar
Zapman
Enthusiast
Enthusiast
Posts: 205
Joined: Tue Jan 07, 2020 7:27 pm

Windows Callback messages decoding

Post by Zapman »

Code: Select all

;
Procedure.s GetWinMessageName(uMsg)
  If uMsg =  $6 : RetValue$ = "WM_ACTIVATE"
    ElseIf uMsg =  $1C : RetValue$ = "WM_ACTIVATEAPP"
    ElseIf uMsg =  $360 : RetValue$ = "WM_AFXFIRST"
    ElseIf uMsg =  $37F : RetValue$ = "WM_AFXLAST"
    ElseIf uMsg =  $8000 : RetValue$ = "WM_APP"
    ElseIf uMsg =  $30C : RetValue$ = "WM_ASKCBFORMATNAME"
    ElseIf uMsg =  $4B : RetValue$ = "WM_CANCELJOURNAL"
    ElseIf uMsg =  $1F : RetValue$ = "WM_CANCELMODE"
    ElseIf uMsg =  $215 : RetValue$ = "WM_CAPTURECHANGED"
    ElseIf uMsg =  $30D : RetValue$ = "WM_CHANGECBCHAIN"
    ElseIf uMsg =  $127 : RetValue$ = "WM_CHANGEUISTATE"
    ElseIf uMsg =  $102 : RetValue$ = "WM_CHAR"
    ElseIf uMsg =  $2F : RetValue$ = "WM_CHARTOITEM"
    ElseIf uMsg =  $22 : RetValue$ = "WM_CHILDACTIVATE"
    ElseIf uMsg =  $303 : RetValue$ = "WM_CLEAR"
    ElseIf uMsg =  $31D : RetValue$ = "WM_CLIPBOARDUPDATE"
    ElseIf uMsg =  $10 : RetValue$ = "WM_CLOSE"
    ElseIf uMsg =  $111 : RetValue$ = "WM_COMMAND"
    ElseIf uMsg =  $41 : RetValue$ = "WM_COMPACTING"
    ElseIf uMsg =  $39 : RetValue$ = "WM_COMPAREITEM"
    ElseIf uMsg =  $7B : RetValue$ = "WM_CONTEXTMENU"
    ElseIf uMsg =  $301 : RetValue$ = "WM_COPY"
    ElseIf uMsg =  $4A : RetValue$ = "WM_COPYDATA"
    ElseIf uMsg =  $1 : RetValue$ = "WM_CREATE"
    ElseIf uMsg =  $135 : RetValue$ = "WM_CTLCOLORBTN"
    ElseIf uMsg =  $136 : RetValue$ = "WM_CTLCOLORDLG"
    ElseIf uMsg =  $133 : RetValue$ = "WM_CTLCOLOREDIT"
    ElseIf uMsg =  $134 : RetValue$ = "WM_CTLCOLORLISTBOX"
    ElseIf uMsg =  $132 : RetValue$ = "WM_CTLCOLORMSGBOX"
    ElseIf uMsg =  $137 : RetValue$ = "WM_CTLCOLORSCROLLBAR"
    ElseIf uMsg =  $138 : RetValue$ = "WM_CTLCOLORSTATIC"
    ElseIf uMsg =  $300 : RetValue$ = "WM_CUT"
    ElseIf uMsg =  $103 : RetValue$ = "WM_DEADCHAR"
    ElseIf uMsg =  $2D : RetValue$ = "WM_DELETEITEM"
    ElseIf uMsg =  $2 : RetValue$ = "WM_DESTROY"
    ElseIf uMsg =  $307 : RetValue$ = "WM_DESTROYCLIPBOARD"
    ElseIf uMsg =  $219 : RetValue$ = "WM_DEVICECHANGE"
    ElseIf uMsg =  $1B : RetValue$ = "WM_DEVMODECHANGE"
    ElseIf uMsg =  $7E : RetValue$ = "WM_DISPLAYCHANGE"
    ElseIf uMsg =  $308 : RetValue$ = "WM_DRAWCLIPBOARD"
    ElseIf uMsg =  $2B : RetValue$ = "WM_DRAWITEM"
    ElseIf uMsg =  $233 : RetValue$ = "WM_DROPFILES"
    ElseIf uMsg =  $A : RetValue$ = "WM_ENABLE"
    ElseIf uMsg =  $16 : RetValue$ = "WM_ENDSESSION"
    ElseIf uMsg =  $121 : RetValue$ = "WM_ENTERIDLE"
    ElseIf uMsg =  $211 : RetValue$ = "WM_ENTERMENULOOP"
    ElseIf uMsg =  $231 : RetValue$ = "WM_ENTERSIZEMOVE"
    ElseIf uMsg =  $14 : RetValue$ = "WM_ERASEBKGND"
    ElseIf uMsg =  $212 : RetValue$ = "WM_EXITMENULOOP"
    ElseIf uMsg =  $232 : RetValue$ = "WM_EXITSIZEMOVE"
    ElseIf uMsg =  $1D : RetValue$ = "WM_FONTCHANGE"
    ElseIf uMsg =  $87 : RetValue$ = "WM_GETDLGCODE"
    ElseIf uMsg =  $31 : RetValue$ = "WM_GETFONT"
    ElseIf uMsg =  $33 : RetValue$ = "WM_GETHOTKEY"
    ElseIf uMsg =  $7F : RetValue$ = "WM_GETICON"
    ElseIf uMsg =  $24 : RetValue$ = "WM_GETMINMAXINFO"
    ElseIf uMsg =  $3D : RetValue$ = "WM_GETOBJECT"
    ElseIf uMsg =  $D : RetValue$ = "WM_GETTEXT"
    ElseIf uMsg =  $E : RetValue$ = "WM_GETTEXTLENGTH"
    ElseIf uMsg =  $358 : RetValue$ = "WM_HANDHELDFIRST"
    ElseIf uMsg =  $35F : RetValue$ = "WM_HANDHELDLAST"
    ElseIf uMsg =  $53 : RetValue$ = "WM_HELP"
    ElseIf uMsg =  $312 : RetValue$ = "WM_HOTKEY"
    ElseIf uMsg =  $114 : RetValue$ = "WM_HSCROLL"
    ElseIf uMsg =  $30E : RetValue$ = "WM_HSCROLLCLIPBOARD"
    ElseIf uMsg =  $27 : RetValue$ = "WM_ICONERASEBKGND"
    ElseIf uMsg =  $286 : RetValue$ = "WM_IME_CHAR"
    ElseIf uMsg =  $10F : RetValue$ = "WM_IME_COMPOSITION"
    ElseIf uMsg =  $284 : RetValue$ = "WM_IME_COMPOSITIONFULL"
    ElseIf uMsg =  $283 : RetValue$ = "WM_IME_CONTROL"
    ElseIf uMsg =  $110 : RetValue$ = "WM_INITDIALOG"
    ElseIf uMsg =  $117 : RetValue$ = "WM_INITMENUPOPUP"
    ElseIf uMsg =  $51 : RetValue$ = "WM_INPUTLANGCHANGE"
    ElseIf uMsg =  $10E : RetValue$ = "WM_IME_ENDCOMPOSITION"
    ElseIf uMsg =  $290 : RetValue$ = "WM_IME_KEYDOWN"
    ElseIf uMsg =  $10F : RetValue$ = "WM_IME_KEYLAST"
    ElseIf uMsg =  $291 : RetValue$ = "WM_IME_KEYUP"
    ElseIf uMsg =  $282 : RetValue$ = "WM_IME_NOTIFY"
    ElseIf uMsg =  $288 : RetValue$ = "WM_IME_REQUEST"
    ElseIf uMsg =  $285 : RetValue$ = "WM_IME_SELECT"
    ElseIf uMsg =  $281 : RetValue$ = "WM_IME_SETCONTEXT"
    ElseIf uMsg =  $10D : RetValue$ = "WM_IME_STARTCOMPOSITION"
    ElseIf uMsg =  $110 : RetValue$ = "WM_INITDIALOG"
    ElseIf uMsg =  $116 : RetValue$ = "WM_INITMENU"
    ElseIf uMsg =  $117 : RetValue$ = "WM_INITMENUPOPUP"
    ElseIf uMsg =  $51 : RetValue$ = "WM_INPUTLANGCHANGE"
    ElseIf uMsg =  $50 : RetValue$ = "WM_INPUTLANGCHANGEREQUEST"
    ElseIf uMsg =  $100 : RetValue$ = "WM_KEYDOWN"
    ElseIf uMsg =  $100 : RetValue$ = "WM_KEYFIRST"
    ElseIf uMsg =  $108 : RetValue$ = "WM_KEYLAST"
    ElseIf uMsg =  $101 : RetValue$ = "WM_KEYUP"
    ElseIf uMsg =  $8 : RetValue$ = "WM_KILLFOCUS"
    ElseIf uMsg =  $203 : RetValue$ = "WM_LBUTTONDBLCLK"
    ElseIf uMsg =  $201 : RetValue$ = "WM_LBUTTONDOWN"
    ElseIf uMsg =  $202 : RetValue$ = "WM_LBUTTONUP"
    ElseIf uMsg =  $209 : RetValue$ = "WM_MBUTTONDBLCLK"
    ElseIf uMsg =  $207 : RetValue$ = "WM_MBUTTONDOWN"
    ElseIf uMsg =  $208 : RetValue$ = "WM_MBUTTONUP"
    ElseIf uMsg =  $222 : RetValue$ = "WM_MDIACTIVATE"
    ElseIf uMsg =  $227 : RetValue$ = "WM_MDICASCADE"
    ElseIf uMsg =  $220 : RetValue$ = "WM_MDICREATE"
    ElseIf uMsg =  $221 : RetValue$ = "WM_MDIDESTROY"
    ElseIf uMsg =  $229 : RetValue$ = "WM_MDIGETACTIVE"
    ElseIf uMsg =  $228 : RetValue$ = "WM_MDIICONARRANGE"
    ElseIf uMsg =  $225 : RetValue$ = "WM_MDIMAXIMIZE"
    ElseIf uMsg =  $224 : RetValue$ = "WM_MDINEXT"
    ElseIf uMsg =  $234 : RetValue$ = "WM_MDIREFRESHMENU"
    ElseIf uMsg =  $223 : RetValue$ = "WM_MDIRESTORE"
    ElseIf uMsg =  $230 : RetValue$ = "WM_MDISETMENU"
    ElseIf uMsg =  $226 : RetValue$ = "WM_MDITILE"
    ElseIf uMsg =  $2C : RetValue$ = "WM_MEASUREITEM"
    ElseIf uMsg =  $120 : RetValue$ = "WM_MENUCHAR"
    ElseIf uMsg =  $126 : RetValue$ = "WM_MENUCOMMAND"
    ElseIf uMsg =  $123 : RetValue$ = "WM_MENUDRAG"
    ElseIf uMsg =  $124 : RetValue$ = "WM_MENUGETOBJECT"
    ElseIf uMsg =  $122 : RetValue$ = "WM_MENURBUTTONUP"
    ElseIf uMsg =  $11F : RetValue$ = "WM_MENUSELECT"
    ElseIf uMsg =  $21 : RetValue$ = "WM_MOUSEACTIVATE"
    ElseIf uMsg =  $200 : RetValue$ = "WM_MOUSEFIRST"
    ElseIf uMsg =  $2A1 : RetValue$ = "WM_MOUSEHOVER"
    ElseIf uMsg =  $20E : RetValue$ = "WM_MOUSEHWHEEL"
    ElseIf uMsg =  $20D : RetValue$ = "WM_MOUSELAST"
    ElseIf uMsg =  $2A3 : RetValue$ = "WM_MOUSELEAVE"
    ElseIf uMsg =  $200 : RetValue$ = "WM_MOUSEMOVE"
    ElseIf uMsg =  $20A : RetValue$ = "WM_MOUSEWHEEL"
    ElseIf uMsg =  $3 : RetValue$ = "WM_MOVE"
    ElseIf uMsg =  $216 : RetValue$ = "WM_MOVING"
    ElseIf uMsg =  $86 : RetValue$ = "WM_NCACTIVATE"
    ElseIf uMsg =  $83 : RetValue$ = "WM_NCCALCSIZE"
    ElseIf uMsg =  $81 : RetValue$ = "WM_NCCREATE"
    ElseIf uMsg =  $82 : RetValue$ = "WM_NCDESTROY"
    ElseIf uMsg =  $84 : RetValue$ = "WM_NCHITTEST"
    ElseIf uMsg =  $A3 : RetValue$ = "WM_NCLBUTTONDBLCLK"
    ElseIf uMsg =  $A1 : RetValue$ = "WM_NCLBUTTONDOWN"
    ElseIf uMsg =  $A2 : RetValue$ = "WM_NCLBUTTONUP"
    ElseIf uMsg =  $A9 : RetValue$ = "WM_NCMBUTTONDBLCLK"
    ElseIf uMsg =  $A7 : RetValue$ = "WM_NCMBUTTONDOWN"
    ElseIf uMsg =  $A8 : RetValue$ = "WM_NCMBUTTONUP"
    ElseIf uMsg =  $2A0 : RetValue$ = "WM_NCMOUSEHOVER"
    ElseIf uMsg =  $2A2 : RetValue$ = "WM_NCMOUSELEAVE"
    ElseIf uMsg =  $A0 : RetValue$ = "WM_NCMOUSEMOVE"
    ElseIf uMsg =  $85 : RetValue$ = "WM_NCPAINT"
    ElseIf uMsg =  $A6 : RetValue$ = "WM_NCRBUTTONDBLCLK"
    ElseIf uMsg =  $A4 : RetValue$ = "WM_NCRBUTTONDOWN"
    ElseIf uMsg =  $A5 : RetValue$ = "WM_NCRBUTTONUP"
    ElseIf uMsg =  $AE : RetValue$ = "WM_NCUAHDRAWCAPTION"
    ElseIf uMsg =  $AF : RetValue$ = "WM_NCUAHDRAWFRAME"
    ElseIf uMsg =  $AD : RetValue$ = "WM_NCXBUTTONDBLCLK"
    ElseIf uMsg =  $AB : RetValue$ = "WM_NCXBUTTONDOWN"
    ElseIf uMsg =  $AC : RetValue$ = "WM_NCXBUTTONUP"
    ElseIf uMsg =  $28 : RetValue$ = "WM_NEXTDLGCTL"
    ElseIf uMsg =  $213 : RetValue$ = "WM_NEXTMENU"
    ElseIf uMsg =  $4E : RetValue$ = "WM_NOTIFY"
    ElseIf uMsg =  $55 : RetValue$ = "WM_NOTIFYFORMAT"
    ElseIf uMsg =  0 : RetValue$ = "WM_NULL"
    ElseIf uMsg =  $F : RetValue$ = "WM_PAINT"
    ElseIf uMsg =  $309 : RetValue$ = "WM_PAINTCLIPBOARD"
    ElseIf uMsg =  $26 : RetValue$ = "WM_PAINTICON"
    ElseIf uMsg =  $311 : RetValue$ = "WM_PALETTECHANGED"
    ElseIf uMsg =  $310 : RetValue$ = "WM_PALETTEISCHANGING"
    ElseIf uMsg =  $210 : RetValue$ = "WM_PARENTNOTIFY"
    ElseIf uMsg =  $302 : RetValue$ = "WM_PASTE"
    ElseIf uMsg =  $380 : RetValue$ = "WM_PENWINFIRST"
    ElseIf uMsg =  $38F : RetValue$ = "WM_PENWINLAST"
    ElseIf uMsg =  $48 : RetValue$ = "WM_POWER"
    ElseIf uMsg =  $218 : RetValue$ = "WM_POWERBROADCAST"
    ElseIf uMsg =  $317 : RetValue$ = "WM_PRINT"
    ElseIf uMsg =  $318 : RetValue$ = "WM_PRINTCLIENT"
    ElseIf uMsg =  $37 : RetValue$ = "WM_QUERYDRAGICON"
    ElseIf uMsg =  $11 : RetValue$ = "WM_QUERYENDSESSION"
    ElseIf uMsg =  $30F : RetValue$ = "WM_QUERYNEWPALETTE"
    ElseIf uMsg =  $13 : RetValue$ = "WM_QUERYOPEN"
    ElseIf uMsg =  $129 : RetValue$ = "WM_QUERYUISTATE"
    ElseIf uMsg =  $23 : RetValue$ = "WM_QUEUESYNC"
    ElseIf uMsg =  $12 : RetValue$ = "WM_QUIT"
    ElseIf uMsg =  $206 : RetValue$ = "WM_RBUTTONDBLCLK"
    ElseIf uMsg =  $204 : RetValue$ = "WM_RBUTTONDOWN"
    ElseIf uMsg =  $205 : RetValue$ = "WM_RBUTTONUP"
    ElseIf uMsg =  $306 : RetValue$ = "WM_RENDERALLFORMATS"
    ElseIf uMsg =  $305 : RetValue$ = "WM_RENDERFORMAT"
    ElseIf uMsg =  $20 : RetValue$ = "WM_SETCURSOR"
    ElseIf uMsg =  $7 : RetValue$ = "WM_SETFOCUS"
    ElseIf uMsg =  $30 : RetValue$ = "WM_SETFONT"
    ElseIf uMsg =  $32 : RetValue$ = "WM_SETHOTKEY"
    ElseIf uMsg =  $80 : RetValue$ = "WM_SETICON"
    ElseIf uMsg =  $B : RetValue$ = "WM_SETREDRAW"
    ElseIf uMsg =  $C : RetValue$ = "WM_SETTEXT"
    ElseIf uMsg =  $1A : RetValue$ = "WM_SETTINGCHANGE"
    ElseIf uMsg =  $18 : RetValue$ = "WM_SHOWWINDOW"
    ElseIf uMsg =  $5 : RetValue$ = "WM_SIZE"
    ElseIf uMsg =  $30B : RetValue$ = "WM_SIZECLIPBOARD"
    ElseIf uMsg =  $214 : RetValue$ = "WM_SIZING"
    ElseIf uMsg =  $2A : RetValue$ = "WM_SPOOLERSTATUS"
    ElseIf uMsg =  $7D : RetValue$ = "WM_STYLECHANGED"
    ElseIf uMsg =  $7C : RetValue$ = "WM_STYLECHANGING"
    ElseIf uMsg =  $88 : RetValue$ = "WM_SYNCPAINT"
    ElseIf uMsg =  $106 : RetValue$ = "WM_SYSCHAR"
    ElseIf uMsg =  $15 : RetValue$ = "WM_SYSCOLORCHANGE"
    ElseIf uMsg =  $112 : RetValue$ = "WM_SYSCOMMAND"
    ElseIf uMsg =  $107 : RetValue$ = "WM_SYSDEADCHAR"
    ElseIf uMsg =  $104 : RetValue$ = "WM_SYSKEYDOWN"
    ElseIf uMsg =  $105 : RetValue$ = "WM_SYSKEYUP"
    ElseIf uMsg =  $52 : RetValue$ = "WM_TCARD"
    ElseIf uMsg =  $31a : RetValue$ = "WM_THEMECHANGED"
    ElseIf uMsg =  $1E : RetValue$ = "WM_TIMECHANGE"
    ElseIf uMsg =  $113 : RetValue$ = "WM_TIMER"
    ElseIf uMsg =  $304 : RetValue$ = "WM_UNDO"
    ElseIf uMsg =  $125 : RetValue$ = "WM_UNINITMENUPOPUP"
    ElseIf uMsg =  $128 : RetValue$ = "WM_UPDATEUISTATE"
    ElseIf uMsg =  $400 : RetValue$ = "WM_USER"
    ElseIf uMsg =  $54 : RetValue$ = "WM_USERCHANGED"
    ElseIf uMsg =  $2E : RetValue$ = "WM_VKEYTOITEM"
    ElseIf uMsg =  $115 : RetValue$ = "WM_VSCROLL"
    ElseIf uMsg =  $30A : RetValue$ = "WM_VSCROLLCLIPBOARD"
    ElseIf uMsg =  $47 : RetValue$ = "WM_WINDOWPOSCHANGED"
    ElseIf uMsg =  $46 : RetValue$ = "WM_WINDOWPOSCHANGING"
    ElseIf uMsg =  $1A : RetValue$ = "WM_WININICHANGE"
    ElseIf uMsg =  $20D : RetValue$ = "WM_XBUTTONDBLCLK"
    ElseIf uMsg =  $20B : RetValue$ = "WM_XBUTTONDOWN"
    ElseIf uMsg =  $20C : RetValue$ = "WM_XBUTTONUP"
    ElseIf uMsg =  $6 : RetValue$ = "WM_ACTIVATE"
    ElseIf uMsg =  $1C : RetValue$ = "WM_ACTIVATEAPP"
    ElseIf uMsg =  $360 : RetValue$ = "WM_AFXFIRST"
    ElseIf uMsg =  $37F : RetValue$ = "WM_AFXLAST"
    ElseIf uMsg =  $8000 : RetValue$ = "WM_APP"
    ElseIf uMsg =  $319 : RetValue$ = "WM_APPCOMMAND"
    ElseIf uMsg =  $30C : RetValue$ = "WM_ASKCBFORMATNAME"
    ElseIf uMsg =  $4B : RetValue$ = "WM_CANCELJOURNAL"
    ElseIf uMsg =  $1F : RetValue$ = "WM_CANCELMODE"
    ElseIf uMsg =  $215 : RetValue$ = "WM_CAPTURECHANGED"
    ElseIf uMsg =  $30D : RetValue$ = "WM_CHANGECBCHAIN"
    ElseIf uMsg =  $127 : RetValue$ = "WM_CHANGEUISTATE"
    ElseIf uMsg =  $102 : RetValue$ = "WM_CHAR"
    ElseIf uMsg =  $2F : RetValue$ = "WM_CHARTOITEM"
    ElseIf uMsg =  $22 : RetValue$ = "WM_CHILDACTIVATE"
    ElseIf uMsg =  $303 : RetValue$ = "WM_CLEAR"
    ElseIf uMsg =  $31D : RetValue$ = "WM_CLIPBOARDUPDATE"
    ElseIf uMsg =  $10 : RetValue$ = "WM_CLOSE"
    ElseIf uMsg =  $111 : RetValue$ = "WM_COMMAND"
    ElseIf uMsg =  $44 : RetValue$ = "WM_COMMNOTIFY"
    ElseIf uMsg =  $41 : RetValue$ = "WM_COMPACTING"
    ElseIf uMsg =  $39 : RetValue$ = "WM_COMPAREITEM"
    ElseIf uMsg =  $7B : RetValue$ = "WM_CONTEXTMENU"
    ElseIf uMsg =  $301 : RetValue$ = "WM_COPY"
    ElseIf uMsg =  $4A : RetValue$ = "WM_COPYDATA"
    ElseIf uMsg =  $1 : RetValue$ = "WM_CREATE"
    ElseIf uMsg =  $135 : RetValue$ = "WM_CTLCOLORBTN"
    ElseIf uMsg =  $136 : RetValue$ = "WM_CTLCOLORDLG"
    ElseIf uMsg =  $133 : RetValue$ = "WM_CTLCOLOREDIT"
    ElseIf uMsg =  $134 : RetValue$ = "WM_CTLCOLORLISTBOX"
    ElseIf uMsg =  $132 : RetValue$ = "WM_CTLCOLORMSGBOX"
    ElseIf uMsg =  $137 : RetValue$ = "WM_CTLCOLORSCROLLBAR"
    ElseIf uMsg =  $138 : RetValue$ = "WM_CTLCOLORSTATIC"
    ElseIf uMsg =  $300 : RetValue$ = "WM_CUT"
    ElseIf uMsg =  $103 : RetValue$ = "WM_DEADCHAR"
    ElseIf uMsg =  $2D : RetValue$ = "WM_DELETEITEM"
    ElseIf uMsg =  $2 : RetValue$ = "WM_DESTROY"
    ElseIf uMsg =  $307 : RetValue$ = "WM_DESTROYCLIPBOARD"
    ElseIf uMsg =  $219 : RetValue$ = "WM_DEVICECHANGE"
    ElseIf uMsg =  $1B : RetValue$ = "WM_DEVMODECHANGE"
    ElseIf uMsg =  $7E : RetValue$ = "WM_DISPLAYCHANGE"
    ElseIf uMsg =  $308 : RetValue$ = "WM_DRAWCLIPBOARD"
    ElseIf uMsg =  $2B : RetValue$ = "WM_DRAWITEM"
    ElseIf uMsg =  $233 : RetValue$ = "WM_DROPFILES"
    ElseIf uMsg =  $A : RetValue$ = "WM_ENABLE"
    ElseIf uMsg =  $16 : RetValue$ = "WM_ENDSESSION"
    ElseIf uMsg =  $121 : RetValue$ = "WM_ENTERIDLE"
    ElseIf uMsg =  $211 : RetValue$ = "WM_ENTERMENULOOP"
    ElseIf uMsg =  $231 : RetValue$ = "WM_ENTERSIZEMOVE"
    ElseIf uMsg =  $14 : RetValue$ = "WM_ERASEBKGND"
    ElseIf uMsg =  $212 : RetValue$ = "WM_EXITMENULOOP"
    ElseIf uMsg =  $232 : RetValue$ = "WM_EXITSIZEMOVE"
    ElseIf uMsg =  $1D : RetValue$ = "WM_FONTCHANGE"
    ElseIf uMsg =  $87 : RetValue$ = "WM_GETDLGCODE"
    ElseIf uMsg =  $31 : RetValue$ = "WM_GETFONT"
    ElseIf uMsg =  $33 : RetValue$ = "WM_GETHOTKEY"
    ElseIf uMsg =  $7F : RetValue$ = "WM_GETICON"
    ElseIf uMsg =  $24 : RetValue$ = "WM_GETMINMAXINFO"
    ElseIf uMsg =  $3D : RetValue$ = "WM_GETOBJECT"
    ElseIf uMsg =  $D : RetValue$ = "WM_GETTEXT"
    ElseIf uMsg =  $E : RetValue$ = "WM_GETTEXTLENGTH"
    ElseIf uMsg =  $358 : RetValue$ = "WM_HANDHELDFIRST"
    ElseIf uMsg =  $35F : RetValue$ = "WM_HANDHELDLAST"
    ElseIf uMsg =  $53 : RetValue$ = "WM_HELP"
    ElseIf uMsg =  $312 : RetValue$ = "WM_HOTKEY"
    ElseIf uMsg =  $114 : RetValue$ = "WM_HSCROLL"
    ElseIf uMsg =  $30E : RetValue$ = "WM_HSCROLLCLIPBOARD"
    ElseIf uMsg =  $27 : RetValue$ = "WM_ICONERASEBKGND"
    ElseIf uMsg =  $286 : RetValue$ = "WM_IME_CHAR"
    ElseIf uMsg =  $10F : RetValue$ = "WM_IME_COMPOSITION"
    ElseIf uMsg =  $284 : RetValue$ = "WM_IME_COMPOSITIONFULL"
    ElseIf uMsg =  $283 : RetValue$ = "WM_IME_CONTROL"
    ElseIf uMsg =  $10E : RetValue$ = "WM_IME_ENDCOMPOSITION"
    ElseIf uMsg =  $290 : RetValue$ = "WM_IME_KEYDOWN"
    ElseIf uMsg =  $10F : RetValue$ = "WM_IME_KEYLAST"
    ElseIf uMsg =  $291 : RetValue$ = "WM_IME_KEYUP"
    ElseIf uMsg =  $282 : RetValue$ = "WM_IME_NOTIFY"
    ElseIf uMsg =  $288 : RetValue$ = "WM_IME_REQUEST"
    ElseIf uMsg =  $285 : RetValue$ = "WM_IME_SELECT"
    ElseIf uMsg =  $281 : RetValue$ = "WM_IME_SETCONTEXT"
    ElseIf uMsg =  $10D : RetValue$ = "WM_IME_STARTCOMPOSITION"
    ElseIf uMsg =  $110 : RetValue$ = "WM_INITDIALOG"
    ElseIf uMsg =  $116 : RetValue$ = "WM_INITMENU"
    ElseIf uMsg =  $117 : RetValue$ = "WM_INITMENUPOPUP"
    ElseIf uMsg =  $51 : RetValue$ = "WM_INPUTLANGCHANGE"
    ElseIf uMsg =  $50 : RetValue$ = "WM_INPUTLANGCHANGEREQUEST"
    ElseIf uMsg =  $100 : RetValue$ = "WM_KEYDOWN"
    ElseIf uMsg =  $100 : RetValue$ = "WM_KEYFIRST"
    ElseIf uMsg =  $108 : RetValue$ = "WM_KEYLAST"
    ElseIf uMsg =  $101 : RetValue$ = "WM_KEYUP"
    ElseIf uMsg =  $8 : RetValue$ = "WM_KILLFOCUS"
    ElseIf uMsg =  $203 : RetValue$ = "WM_LBUTTONDBLCLK"
    ElseIf uMsg =  $201 : RetValue$ = "WM_LBUTTONDOWN"
    ElseIf uMsg =  $202 : RetValue$ = "WM_LBUTTONUP"
    ElseIf uMsg =  $209 : RetValue$ = "WM_MBUTTONDBLCLK"
    ElseIf uMsg =  $207 : RetValue$ = "WM_MBUTTONDOWN"
    ElseIf uMsg =  $208 : RetValue$ = "WM_MBUTTONUP"
    ElseIf uMsg =  $222 : RetValue$ = "WM_MDIACTIVATE"
    ElseIf uMsg =  $227 : RetValue$ = "WM_MDICASCADE"
    ElseIf uMsg =  $220 : RetValue$ = "WM_MDICREATE"
    ElseIf uMsg =  $221 : RetValue$ = "WM_MDIDESTROY"
    ElseIf uMsg =  $229 : RetValue$ = "WM_MDIGETACTIVE"
    ElseIf uMsg =  $228 : RetValue$ = "WM_MDIICONARRANGE"
    ElseIf uMsg =  $225 : RetValue$ = "WM_MDIMAXIMIZE"
    ElseIf uMsg =  $224 : RetValue$ = "WM_MDINEXT"
    ElseIf uMsg =  $234 : RetValue$ = "WM_MDIREFRESHMENU"
    ElseIf uMsg =  $223 : RetValue$ = "WM_MDIRESTORE"
    ElseIf uMsg =  $230 : RetValue$ = "WM_MDISETMENU"
    ElseIf uMsg =  $226 : RetValue$ = "WM_MDITILE"
    ElseIf uMsg =  $2C : RetValue$ = "WM_MEASUREITEM"
    ElseIf uMsg =  $120 : RetValue$ = "WM_MENUCHAR"
    ElseIf uMsg =  $126 : RetValue$ = "WM_MENUCOMMAND"
    ElseIf uMsg =  $123 : RetValue$ = "WM_MENUDRAG"
    ElseIf uMsg =  $124 : RetValue$ = "WM_MENUGETOBJECT"
    ElseIf uMsg =  $122 : RetValue$ = "WM_MENURBUTTONUP"
    ElseIf uMsg =  $11F : RetValue$ = "WM_MENUSELECT"
    ElseIf uMsg =  $21 : RetValue$ = "WM_MOUSEACTIVATE"
    ElseIf uMsg =  $200 : RetValue$ = "WM_MOUSEFIRST"
    ElseIf uMsg =  $2A1 : RetValue$ = "WM_MOUSEHOVER"
    ElseIf uMsg =  $20E : RetValue$ = "WM_MOUSEHWHEEL"
    ElseIf uMsg =  $20D : RetValue$ = "WM_MOUSELAST"
    ElseIf uMsg =  $2A3 : RetValue$ = "WM_MOUSELEAVE"
    ElseIf uMsg =  $200 : RetValue$ = "WM_MOUSEMOVE"
    ElseIf uMsg =  $20A : RetValue$ = "WM_MOUSEWHEEL"
    ElseIf uMsg =  $3 : RetValue$ = "WM_MOVE"
    ElseIf uMsg =  $216 : RetValue$ = "WM_MOVING"
    ElseIf uMsg =  $86 : RetValue$ = "WM_NCACTIVATE"
    ElseIf uMsg =  $83 : RetValue$ = "WM_NCCALCSIZE"
    ElseIf uMsg =  $81 : RetValue$ = "WM_NCCREATE"
    ElseIf uMsg =  $82 : RetValue$ = "WM_NCDESTROY"
    ElseIf uMsg =  $84 : RetValue$ = "WM_NCHITTEST"
    ElseIf uMsg =  $A3 : RetValue$ = "WM_NCLBUTTONDBLCLK"
    ElseIf uMsg =  $A1 : RetValue$ = "WM_NCLBUTTONDOWN"
    ElseIf uMsg =  $A2 : RetValue$ = "WM_NCLBUTTONUP"
    ElseIf uMsg =  $A9 : RetValue$ = "WM_NCMBUTTONDBLCLK"
    ElseIf uMsg =  $A7 : RetValue$ = "WM_NCMBUTTONDOWN"
    ElseIf uMsg =  $A8 : RetValue$ = "WM_NCMBUTTONUP"
    ElseIf uMsg =  $2A0 : RetValue$ = "WM_NCMOUSEHOVER"
    ElseIf uMsg =  $2A2 : RetValue$ = "WM_NCMOUSELEAVE"
    ElseIf uMsg =  $A0 : RetValue$ = "WM_NCMOUSEMOVE"
    ElseIf uMsg =  $85 : RetValue$ = "WM_NCPAINT"
    ElseIf uMsg =  $A6 : RetValue$ = "WM_NCRBUTTONDBLCLK"
    ElseIf uMsg =  $A4 : RetValue$ = "WM_NCRBUTTONDOWN"
    ElseIf uMsg =  $A5 : RetValue$ = "WM_NCRBUTTONUP"
    ElseIf uMsg =  $AE : RetValue$ = "WM_NCUAHDRAWCAPTION"
    ElseIf uMsg =  $AF : RetValue$ = "WM_NCUAHDRAWFRAME"
    ElseIf uMsg =  $AD : RetValue$ = "WM_NCXBUTTONDBLCLK"
    ElseIf uMsg =  $AB : RetValue$ = "WM_NCXBUTTONDOWN"
    ElseIf uMsg =  $AC : RetValue$ = "WM_NCXBUTTONUP"
    ElseIf uMsg =  $28 : RetValue$ = "WM_NEXTDLGCTL"
    ElseIf uMsg =  $213 : RetValue$ = "WM_NEXTMENU"
    ElseIf uMsg =  $4E : RetValue$ = "WM_NOTIFY"
    ElseIf uMsg =  $55 : RetValue$ = "WM_NOTIFYFORMAT"
    ElseIf uMsg =  $42 : RetValue$ = "WM_OTHERWINDOWCREATED"
    ElseIf uMsg =  $43 : RetValue$ = "WM_OTHERWINDOWDESTROYED"
    ElseIf uMsg =  $F : RetValue$ = "WM_PAINT"
    ElseIf uMsg =  $309 : RetValue$ = "WM_PAINTCLIPBOARD"
    ElseIf uMsg =  $26 : RetValue$ = "WM_PAINTICON"
    ElseIf uMsg =  $311 : RetValue$ = "WM_PALETTECHANGED"
    ElseIf uMsg =  $310 : RetValue$ = "WM_PALETTEISCHANGING"
    ElseIf uMsg =  $210 : RetValue$ = "WM_PARENTNOTIFY"
    ElseIf uMsg =  $302 : RetValue$ = "WM_PASTE"
    ElseIf uMsg =  $380 : RetValue$ = "WM_PENWINFIRST"
    ElseIf uMsg =  $38F : RetValue$ = "WM_PENWINLAST"
    ElseIf uMsg =  $48 : RetValue$ = "WM_POWER"
    ElseIf uMsg =  $218 : RetValue$ = "WM_POWERBROADCAST"
    ElseIf uMsg =  $317 : RetValue$ = "WM_PRINT"
    ElseIf uMsg =  $318 : RetValue$ = "WM_PRINTCLIENT"
    ElseIf uMsg =  $37 : RetValue$ = "WM_QUERYDRAGICON"
    ElseIf uMsg =  $11 : RetValue$ = "WM_QUERYENDSESSION"
    ElseIf uMsg =  $30F : RetValue$ = "WM_QUERYNEWPALETTE"
    ElseIf uMsg =  $13 : RetValue$ = "WM_QUERYOPEN"
    ElseIf uMsg =  $129 : RetValue$ = "WM_QUERYUISTATE"
    ElseIf uMsg =  $23 : RetValue$ = "WM_QUEUESYNC"
    ElseIf uMsg =  $12 : RetValue$ = "WM_QUIT"
    ElseIf uMsg =  $206 : RetValue$ = "WM_RBUTTONDBLCLK"
    ElseIf uMsg =  $204 : RetValue$ = "WM_RBUTTONDOWN"
    ElseIf uMsg =  $205 : RetValue$ = "WM_RBUTTONUP"
    ElseIf uMsg =  $306 : RetValue$ = "WM_RENDERALLFORMATS"
    ElseIf uMsg =  $305 : RetValue$ = "WM_RENDERFORMAT"
    ElseIf uMsg =  $20 : RetValue$ = "WM_SETCURSOR"
    ElseIf uMsg =  $7 : RetValue$ = "WM_SETFOCUS"
    ElseIf uMsg =  $30 : RetValue$ = "WM_SETFONT"
    ElseIf uMsg =  $32 : RetValue$ = "WM_SETHOTKEY"
    ElseIf uMsg =  $80 : RetValue$ = "WM_SETICON"
    ElseIf uMsg =  $B : RetValue$ = "WM_SETREDRAW"
    ElseIf uMsg =  $C : RetValue$ = "WM_SETTEXT"
    ElseIf uMsg =  $1A : RetValue$ = "WM_SETTINGCHANGE"
    ElseIf uMsg =  $18 : RetValue$ = "WM_SHOWWINDOW"
    ElseIf uMsg =  $5 : RetValue$ = "WM_SIZE"
    ElseIf uMsg =  $30B : RetValue$ = "WM_SIZECLIPBOARD"
    ElseIf uMsg =  $214 : RetValue$ = "WM_SIZING"
    ElseIf uMsg =  $2A : RetValue$ = "WM_SPOOLERSTATUS"
    ElseIf uMsg =  $7D : RetValue$ = "WM_STYLECHANGED"
    ElseIf uMsg =  $7C : RetValue$ = "WM_STYLECHANGING"
    ElseIf uMsg =  $88 : RetValue$ = "WM_SYNCPAINT"
    ElseIf uMsg =  $106 : RetValue$ = "WM_SYSCHAR"
    ElseIf uMsg =  $15 : RetValue$ = "WM_SYSCOLORCHANGE"
    ElseIf uMsg =  $112 : RetValue$ = "WM_SYSCOMMAND"
    ElseIf uMsg =  $107 : RetValue$ = "WM_SYSDEADCHAR"
    ElseIf uMsg =  $104 : RetValue$ = "WM_SYSKEYDOWN"
    ElseIf uMsg =  $105 : RetValue$ = "WM_SYSKEYUP"
    ElseIf uMsg =  $2c0 : RetValue$ = "WM_TABLET_FIRST"
    ElseIf uMsg =  $2df : RetValue$ = "WM_TABLET_LAST"
    ElseIf uMsg =  $52 : RetValue$ = "WM_TCARD"
    ElseIf uMsg =  $31A : RetValue$ = "WM_THEMECHANGED"
    ElseIf uMsg =  $1E : RetValue$ = "WM_TIMECHANGE"
    ElseIf uMsg =  $113 : RetValue$ = "WM_TIMER"
    ElseIf uMsg =  $304 : RetValue$ = "WM_UNDO"
    ElseIf uMsg =  $109 : RetValue$ = "WM_UNICHAR"
    ElseIf uMsg =  $125 : RetValue$ = "WM_UNINITMENUPOPUP"
    ElseIf uMsg =  $128 : RetValue$ = "WM_UPDATEUISTATE"
    ElseIf uMsg =  $400 : RetValue$ = "WM_USER"
    ElseIf uMsg =  $54 : RetValue$ = "WM_USERCHANGED"
    ElseIf uMsg =  $2E : RetValue$ = "WM_VKEYTOITEM"
    ElseIf uMsg =  $115 : RetValue$ = "WM_VSCROLL"
    ElseIf uMsg =  $30A : RetValue$ = "WM_VSCROLLCLIPBOARD"
    ElseIf uMsg =  $47 : RetValue$ = "WM_WINDOWPOSCHANGED"
    ElseIf uMsg =  $46 : RetValue$ = "WM_WINDOWPOSCHANGING"
    ElseIf uMsg =  $1A : RetValue$ = "WM_WININICHANGE"
    ElseIf uMsg =  $2B1 : RetValue$ = "WM_WTSSESSION_CHANGE"
    ElseIf uMsg =  $20D : RetValue$ = "WM_XBUTTONDBLCLK"
    ElseIf uMsg =  $20B : RetValue$ = "WM_XBUTTONDOWN"
    ElseIf uMsg =  $20C : RetValue$ = "WM_XBUTTONUP"
    ;
    ; From PureLust (English PureBasic forum):
    ;
    ElseIf uMsg =  73 : RetValue$ = "WM_COPYGLOBALDATA"
    ElseIf uMsg =  195 : RetValue$ = "EM_SETFONT"
    ElseIf uMsg =  202 : RetValue$ = "EM_SETWORDBREAK"
    ElseIf uMsg =  235 : RetValue$ = "SBM_GETSCROLLBARINFO"
    ElseIf uMsg =  248 : RetValue$ = "BM_SETDONTCLICK"
    ElseIf uMsg =  280 : RetValue$ = "WM_SYSTIMER"
    ElseIf uMsg =  897 : RetValue$ = "WM_RCRESULT"
    ElseIf uMsg =  898 : RetValue$ = "WM_HOOKRCRESULT"
    ElseIf uMsg =  899 : RetValue$ = "WM_GLOBALRCCHANGE"
    ElseIf uMsg =  899 : RetValue$ = "WM_PENMISCINFO"
    ElseIf uMsg =  900 : RetValue$ = "WM_SKB"
    ElseIf uMsg =  901 : RetValue$ = "WM_HEDITCTL"
    ElseIf uMsg =  901 : RetValue$ = "WM_PENCTL"
    ElseIf uMsg =  902 : RetValue$ = "WM_PENMISC"
    ElseIf uMsg =  903 : RetValue$ = "WM_CTLINIT"
    ElseIf uMsg =  904 : RetValue$ = "WM_PENEVENT"
    ElseIf uMsg =  1024 : RetValue$ = "DDM_SETFMT"
    ElseIf uMsg =  1025 : RetValue$ = "DDM_DRAW"
    ElseIf uMsg =  1026 : RetValue$ = "CBEM_SETIMAGELIST"
    ElseIf uMsg =  1026 : RetValue$ = "DDM_CLOSE"
    ElseIf uMsg =  1026 : RetValue$ = "DM_REPOSITION"
    ElseIf uMsg =  1027 : RetValue$ = "CBEM_GETIMAGELIST"
    ElseIf uMsg =  1027 : RetValue$ = "DDM_BEGIN"
    ElseIf uMsg =  1028 : RetValue$ = "DDM_END"
    ElseIf uMsg =  1030 : RetValue$ = "CBEM_GETCOMBOCONTROL"
    ElseIf uMsg =  1030 : RetValue$ = "TB_MARKBUTTON"
    ElseIf uMsg =  1031 : RetValue$ = "CBEM_GETEDITCONTROL"
    ElseIf uMsg =  1031 : RetValue$ = "PBM_GETRANGE"
    ElseIf uMsg =  1032 : RetValue$ = "CBEM_SETEXSTYLE"
    ElseIf uMsg =  1032 : RetValue$ = "PBM_GETPOS"
    ElseIf uMsg =  1033 : RetValue$ = "CBEM_GETEXSTYLE"
    ElseIf uMsg =  1033 : RetValue$ = "CBEM_GETEXTENDEDSTYLE"
    ElseIf uMsg =  1033 : RetValue$ = "PBM_SETBARCOLOR"
    ElseIf uMsg =  1034 : RetValue$ = "CBEM_HASEDITCHANGED"
    ElseIf uMsg =  1034 : RetValue$ = "WIZ_QUERYNUMPAGES"
    ElseIf uMsg =  1035 : RetValue$ = "WIZ_NEXT"
    ElseIf uMsg =  1036 : RetValue$ = "WIZ_PREV"
    ElseIf uMsg =  1038 : RetValue$ = "CBEM_SETEXTENDEDSTYLE"
    ElseIf uMsg =  1038 : RetValue$ = "SB_ISSIMPLE"
    ElseIf uMsg =  1038 : RetValue$ = "TB_ISBUTTONHIGHLIGHTED"
    ElseIf uMsg =  1039 : RetValue$ = "SB_SETICON"
    ElseIf uMsg =  1044 : RetValue$ = "SB_GETICON"
    ElseIf uMsg =  1053 : RetValue$ = "TBM_SETTOOLTIPS"
    ElseIf uMsg =  1054 : RetValue$ = "TBM_GETTOOLTIPS"
    ElseIf uMsg =  1055 : RetValue$ = "TBM_SETTIPSIDE"
    ElseIf uMsg =  1056 : RetValue$ = "TBM_SETBUDDY"
    ElseIf uMsg =  1056 : RetValue$ = "TTM_SETTITLEA"
    ElseIf uMsg =  1057 : RetValue$ = "MSG_FTS_JUMP_VA"
    ElseIf uMsg =  1057 : RetValue$ = "TBM_GETBUDDY"
    ElseIf uMsg =  1057 : RetValue$ = "TTM_SETTITLEW"
    ElseIf uMsg =  1059 : RetValue$ = "MSG_FTS_JUMP_QWORD"
    ElseIf uMsg =  1060 : RetValue$ = "MSG_REINDEX_REQUEST"
    ElseIf uMsg =  1061 : RetValue$ = "MSG_FTS_WHERE_IS_IT"
    ElseIf uMsg =  1067 : RetValue$ = "RB_PUSHCHEVRON"
    ElseIf uMsg =  1069 : RetValue$ = "MSG_GET_DEFFONT"
    ElseIf uMsg =  1123 : RetValue$ = "TAPI_REPLY"
    ElseIf uMsg =  1124 : RetValue$ = "BFFM_SETSTATUSTEXTA"
    ElseIf uMsg =  1125 : RetValue$ = "PSM_SETCURSEL"
    ElseIf uMsg =  1126 : RetValue$ = "BFFM_SETSELECTIONA"
    ElseIf uMsg =  1126 : RetValue$ = "PSM_REMOVEPAGE"
    ElseIf uMsg =  1127 : RetValue$ = "BFFM_SETSELECTIONW"
    ElseIf uMsg =  1127 : RetValue$ = "PSM_ADDPAGE"
    ElseIf uMsg =  1128 : RetValue$ = "BFFM_SETSTATUSTEXTW"
    ElseIf uMsg =  1128 : RetValue$ = "PSM_CHANGED"
    ElseIf uMsg =  1129 : RetValue$ = "PSM_RESTARTWINDOWS"
    ElseIf uMsg =  1130 : RetValue$ = "PSM_REBOOTSYSTEM"
    ElseIf uMsg =  1131 : RetValue$ = "PSM_CANCELTOCLOSE"
    ElseIf uMsg =  1132 : RetValue$ = "PSM_QUERYSIBLINGS"
    ElseIf uMsg =  1133 : RetValue$ = "MCIWNDM_GETZOOM"
    ElseIf uMsg =  1133 : RetValue$ = "PSM_UNCHANGED"
    ElseIf uMsg =  1134 : RetValue$ = "PSM_APPLY"
    ElseIf uMsg =  1135 : RetValue$ = "PSM_SETTITLEA"
    ElseIf uMsg =  1136 : RetValue$ = "PSM_SETWIZBUTTONS"
    ElseIf uMsg =  1137 : RetValue$ = "PSM_PRESSBUTTON"
    ElseIf uMsg =  1138 : RetValue$ = "PSM_SETCURSELID"
    ElseIf uMsg =  1139 : RetValue$ = "PSM_SETFINISHTEXTA"
    ElseIf uMsg =  1140 : RetValue$ = "PSM_GETTABCONTROL"
    ElseIf uMsg =  1141 : RetValue$ = "PSM_ISDIALOGMESSAGE"
    ElseIf uMsg =  1142 : RetValue$ = "MCIWNDM_REALIZE"
    ElseIf uMsg =  1142 : RetValue$ = "PSM_GETCURRENTPAGEHWND"
    ElseIf uMsg =  1143 : RetValue$ = "MCIWNDM_SETTIMEFORMATA"
    ElseIf uMsg =  1143 : RetValue$ = "PSM_INSERTPAGE"
    ElseIf uMsg =  1144 : RetValue$ = "MCIWNDM_GETTIMEFORMATA"
    ElseIf uMsg =  1144 : RetValue$ = "PSM_SETTITLEW"
    ElseIf uMsg =  1145 : RetValue$ = "MCIWNDM_VALIDATEMEDIA"
    ElseIf uMsg =  1145 : RetValue$ = "PSM_SETFINISHTEXTW"
    ElseIf uMsg =  1147 : RetValue$ = "MCIWNDM_PLAYTO"
    ElseIf uMsg =  1148 : RetValue$ = "MCIWNDM_GETFILENAMEA"
    ElseIf uMsg =  1149 : RetValue$ = "MCIWNDM_GETDEVICEA"
    ElseIf uMsg =  1149 : RetValue$ = "PSM_SETHEADERTITLEA"
    ElseIf uMsg =  1150 : RetValue$ = "MCIWNDM_GETPALETTE"
    ElseIf uMsg =  1150 : RetValue$ = "PSM_SETHEADERTITLEW"
    ElseIf uMsg =  1151 : RetValue$ = "MCIWNDM_SETPALETTE"
    ElseIf uMsg =  1151 : RetValue$ = "PSM_SETHEADERSUBTITLEA"
    ElseIf uMsg =  1152 : RetValue$ = "MCIWNDM_GETERRORA"
    ElseIf uMsg =  1152 : RetValue$ = "PSM_SETHEADERSUBTITLEW"
    ElseIf uMsg =  1153 : RetValue$ = "PSM_HWNDTOINDEX"
    ElseIf uMsg =  1154 : RetValue$ = "PSM_INDEXTOHWND"
    ElseIf uMsg =  1155 : RetValue$ = "MCIWNDM_SETINACTIVETIMER"
    ElseIf uMsg =  1155 : RetValue$ = "PSM_PAGETOINDEX"
    ElseIf uMsg =  1156 : RetValue$ = "PSM_INDEXTOPAGE"
    ElseIf uMsg =  1157 : RetValue$ = "MCIWNDM_GETINACTIVETIMER"
    ElseIf uMsg =  1157 : RetValue$ = "PSM_IDTOINDEX"
    ElseIf uMsg =  1158 : RetValue$ = "PSM_INDEXTOID"
    ElseIf uMsg =  1159 : RetValue$ = "PSM_GETRESULT"
    ElseIf uMsg =  1160 : RetValue$ = "PSM_RECALCPAGESIZES"
    ElseIf uMsg =  1164 : RetValue$ = "MCIWNDM_GET_SOURCE"
    ElseIf uMsg =  1165 : RetValue$ = "MCIWNDM_PUT_SOURCE"
    ElseIf uMsg =  1166 : RetValue$ = "MCIWNDM_GET_DEST"
    ElseIf uMsg =  1167 : RetValue$ = "MCIWNDM_PUT_DEST"
    ElseIf uMsg =  1168 : RetValue$ = "MCIWNDM_CAN_PLAY"
    ElseIf uMsg =  1169 : RetValue$ = "MCIWNDM_CAN_WINDOW"
    ElseIf uMsg =  1170 : RetValue$ = "MCIWNDM_CAN_RECORD"
    ElseIf uMsg =  1171 : RetValue$ = "MCIWNDM_CAN_SAVE"
    ElseIf uMsg =  1172 : RetValue$ = "MCIWNDM_CAN_EJECT"
    ElseIf uMsg =  1173 : RetValue$ = "MCIWNDM_CAN_CONFIG"
    ElseIf uMsg =  1174 : RetValue$ = "IE_GETINK"
    ElseIf uMsg =  1174 : RetValue$ = "IE_MSGFIRST"
    ElseIf uMsg =  1174 : RetValue$ = "MCIWNDM_PALETTEKICK"
    ElseIf uMsg =  1175 : RetValue$ = "IE_SETINK"
    ElseIf uMsg =  1176 : RetValue$ = "IE_GETPENTIP"
    ElseIf uMsg =  1177 : RetValue$ = "IE_SETPENTIP"
    ElseIf uMsg =  1178 : RetValue$ = "IE_GETERASERTIP"
    ElseIf uMsg =  1179 : RetValue$ = "IE_SETERASERTIP"
    ElseIf uMsg =  1180 : RetValue$ = "IE_GETBKGND"
    ElseIf uMsg =  1181 : RetValue$ = "IE_SETBKGND"
    ElseIf uMsg =  1182 : RetValue$ = "IE_GETGRIDORIGIN"
    ElseIf uMsg =  1183 : RetValue$ = "IE_SETGRIDORIGIN"
    ElseIf uMsg =  1184 : RetValue$ = "IE_GETGRIDPEN"
    ElseIf uMsg =  1185 : RetValue$ = "IE_SETGRIDPEN"
    ElseIf uMsg =  1186 : RetValue$ = "IE_GETGRIDSIZE"
    ElseIf uMsg =  1187 : RetValue$ = "IE_SETGRIDSIZE"
    ElseIf uMsg =  1188 : RetValue$ = "IE_GETMODE"
    ElseIf uMsg =  1189 : RetValue$ = "IE_SETMODE"
    ElseIf uMsg =  1190 : RetValue$ = "IE_GETINKRECT"
    ElseIf uMsg =  1208 : RetValue$ = "IE_GETAPPDATA"
    ElseIf uMsg =  1209 : RetValue$ = "IE_SETAPPDATA"
    ElseIf uMsg =  1210 : RetValue$ = "IE_GETDRAWOPTS"
    ElseIf uMsg =  1211 : RetValue$ = "IE_SETDRAWOPTS"
    ElseIf uMsg =  1212 : RetValue$ = "IE_GETFORMAT"
    ElseIf uMsg =  1213 : RetValue$ = "IE_SETFORMAT"
    ElseIf uMsg =  1214 : RetValue$ = "IE_GETINKINPUT"
    ElseIf uMsg =  1215 : RetValue$ = "IE_SETINKINPUT"
    ElseIf uMsg =  1216 : RetValue$ = "IE_GETNOTIFY"
    ElseIf uMsg =  1217 : RetValue$ = "IE_SETNOTIFY"
    ElseIf uMsg =  1218 : RetValue$ = "IE_GETRECOG"
    ElseIf uMsg =  1219 : RetValue$ = "IE_SETRECOG"
    ElseIf uMsg =  1220 : RetValue$ = "IE_GETSECURITY"
    ElseIf uMsg =  1221 : RetValue$ = "IE_SETSECURITY"
    ElseIf uMsg =  1222 : RetValue$ = "IE_GETSEL"
    ElseIf uMsg =  1223 : RetValue$ = "IE_SETSEL"
    ElseIf uMsg =  1224 : RetValue$ = "IE_DOCOMMAND"
    ElseIf uMsg =  1224 : RetValue$ = "MCIWNDM_NOTIFYMODE"
    ElseIf uMsg =  1225 : RetValue$ = "IE_GETCOMMAND"
    ElseIf uMsg =  1226 : RetValue$ = "IE_GETCOUNT"
    ElseIf uMsg =  1227 : RetValue$ = "IE_GETGESTURE"
    ElseIf uMsg =  1227 : RetValue$ = "MCIWNDM_NOTIFYMEDIA"
    ElseIf uMsg =  1228 : RetValue$ = "IE_GETMENU"
    ElseIf uMsg =  1229 : RetValue$ = "IE_GETPAINTDC"
    ElseIf uMsg =  1229 : RetValue$ = "MCIWNDM_NOTIFYERROR"
    ElseIf uMsg =  1230 : RetValue$ = "IE_GETPDEVENT"
    ElseIf uMsg =  1231 : RetValue$ = "IE_GETSELCOUNT"
    ElseIf uMsg =  1232 : RetValue$ = "IE_GETSELITEMS"
    ElseIf uMsg =  1233 : RetValue$ = "IE_GETSTYLE"
    ElseIf uMsg =  1243 : RetValue$ = "MCIWNDM_SETTIMEFORMATW"
    ElseIf uMsg =  1244 : RetValue$ = "MCIWNDM_GETTIMEFORMATW"
    ElseIf uMsg =  1248 : RetValue$ = "MCIWNDM_GETFILENAMEW"
    ElseIf uMsg =  1249 : RetValue$ = "MCIWNDM_GETDEVICEW"
    ElseIf uMsg =  1252 : RetValue$ = "MCIWNDM_GETERRORW"
    ElseIf uMsg =  1293 : RetValue$ = "EM_GETQUERYRTFOBJ"
    ElseIf uMsg =  1294 : RetValue$ = "EM_SETQUERYRTFOBJ"
    ElseIf uMsg =  1536 : RetValue$ = "FM_GETFOCUS"
    ElseIf uMsg =  1537 : RetValue$ = "FM_GETDRIVEINFOA"
    ElseIf uMsg =  1538 : RetValue$ = "FM_GETSELCOUNT"
    ElseIf uMsg =  1539 : RetValue$ = "FM_GETSELCOUNTLFN"
    ElseIf uMsg =  1540 : RetValue$ = "FM_GETFILESELA"
    ElseIf uMsg =  1541 : RetValue$ = "FM_GETFILESELLFNA"
    ElseIf uMsg =  1542 : RetValue$ = "FM_REFRESH_WINDOWS"
    ElseIf uMsg =  1543 : RetValue$ = "FM_RELOAD_EXTENSIONS"
    ElseIf uMsg =  1553 : RetValue$ = "FM_GETDRIVEINFOW"
    ElseIf uMsg =  1556 : RetValue$ = "FM_GETFILESELW"
    ElseIf uMsg =  1557 : RetValue$ = "FM_GETFILESELLFNW"
    ElseIf uMsg =  1625 : RetValue$ = "WLX_WM_SAS"
    ElseIf uMsg =  2024 : RetValue$ = "SM_GETSELCOUNT"
    ElseIf uMsg =  2024 : RetValue$ = "UM_GETSELCOUNT"
    ElseIf uMsg =  2025 : RetValue$ = "SM_GETSERVERSELA"
    ElseIf uMsg =  2025 : RetValue$ = "UM_GETUSERSELA"
    ElseIf uMsg =  2026 : RetValue$ = "SM_GETSERVERSELW"
    ElseIf uMsg =  2026 : RetValue$ = "UM_GETUSERSELW"
    ElseIf uMsg =  2027 : RetValue$ = "SM_GETCURFOCUSA"
    ElseIf uMsg =  2027 : RetValue$ = "UM_GETGROUPSELA"
    ElseIf uMsg =  2028 : RetValue$ = "SM_GETCURFOCUSW"
    ElseIf uMsg =  2028 : RetValue$ = "UM_GETGROUPSELW"
    ElseIf uMsg =  2029 : RetValue$ = "SM_GETOPTIONS"
    ElseIf uMsg =  2029 : RetValue$ = "UM_GETCURFOCUSA"
    ElseIf uMsg =  2030 : RetValue$ = "UM_GETCURFOCUSW"
    ElseIf uMsg =  2031 : RetValue$ = "UM_GETOPTIONS"
    ElseIf uMsg =  2032 : RetValue$ = "UM_GETOPTIONS2"
    ElseIf uMsg =  8192 : RetValue$ = "OCM__BASE"
    ElseIf uMsg =  8217 : RetValue$ = "OCM_CTLCOLOR"
    ElseIf uMsg =  8235 : RetValue$ = "OCM_DRAWITEM"
    ElseIf uMsg =  8236 : RetValue$ = "OCM_MEASUREITEM"
    ElseIf uMsg =  8237 : RetValue$ = "OCM_DELETEITEM"
    ElseIf uMsg =  8238 : RetValue$ = "OCM_VKEYTOITEM"
    ElseIf uMsg =  8239 : RetValue$ = "OCM_CHARTOITEM"
    ElseIf uMsg =  8249 : RetValue$ = "OCM_COMPAREITEM"
    ElseIf uMsg =  8270 : RetValue$ = "OCM_NOTIFY"
    ElseIf uMsg =  8465 : RetValue$ = "OCM_COMMAND"
    ElseIf uMsg =  8468 : RetValue$ = "OCM_HSCROLL"
    ElseIf uMsg =  8469 : RetValue$ = "OCM_VSCROLL"
    ElseIf uMsg =  8498 : RetValue$ = "OCM_CTLCOLORMSGBOX"
    ElseIf uMsg =  8499 : RetValue$ = "OCM_CTLCOLOREDIT"
    ElseIf uMsg =  8500 : RetValue$ = "OCM_CTLCOLORLISTBOX"
    ElseIf uMsg =  8501 : RetValue$ = "OCM_CTLCOLORBTN"
    ElseIf uMsg =  8502 : RetValue$ = "OCM_CTLCOLORDLG"
    ElseIf uMsg =  8503 : RetValue$ = "OCM_CTLCOLORSCROLLBAR"
    ElseIf uMsg =  8504 : RetValue$ = "OCM_CTLCOLORSTATIC"
    ElseIf uMsg =  8720 : RetValue$ = "OCM_PARENTNOTIFY"

    Else
    RetValue$ = "Unknown message (" + Str(uMsg) +")."
  EndIf
  ProcedureReturn RetValue$
EndProcedure
Quin
Addict
Addict
Posts: 1133
Joined: Thu Mar 31, 2022 7:03 pm
Location: Colorado, United States
Contact:

Re: Windows Callback messages decoding

Post by Quin »

Sorry, but what is this useful for? All I see is a massive if chain that I don't even want to think about the assembly for, with some statements pointing to the same condition, for example 1229 is checked twice. Also, these constants should be viewable on MSDN. Would you mind giving a bit of info about this code and how it's useful?
A massive procedure with no explaination is sorta confusing :D
Axolotl
Addict
Addict
Posts: 835
Joined: Wed Dec 31, 2008 3:36 pm

Re: Windows Callback messages decoding

Post by Axolotl »

this stuff is sometimes helpful for debugging windows control situations. for example with subclassing.
Maybe, this is similar to the following, right? :oops:
Debug Window Message ID
Just because it worked doesn't mean it works.
PureBasic 6.04 (x86) and <latest stable version and current alpha/beta> (x64) on Windows 11 Home. Now started with Linux (VM: Ubuntu 22.04).
User avatar
Zapman
Enthusiast
Enthusiast
Posts: 205
Joined: Tue Jan 07, 2020 7:27 pm

Re: Windows Callback messages decoding

Post by Zapman »

Quin wrote: Tue Oct 29, 2024 3:32 pm Sorry, but what is this useful for?
I thought that all was in the title, but you're absolutely right, Quin: I should explain a bit in my post. Thanks to Axolotl for having done it.
This type of thing is only interresting for debugging, but, then, it's VERY usefull.

Another thanks to Axolotl for the link added. I missed that very old post. Its list is less complete that the one given here, but it refers to another post very interresting: posting.php?mode=quote&p=68596
Quin
Addict
Addict
Posts: 1133
Joined: Thu Mar 31, 2022 7:03 pm
Location: Colorado, United States
Contact:

Re: Windows Callback messages decoding

Post by Quin »

Ah, for debugging purposes, I gotcha.
The original post from 2007 brings up a fascinating idea that I'm not sure is still an issue today, does including this procedure make your binaries any bigger? You probably won't be including it in release builds, but still...
Post Reply