# Windows Message Codes

Sorted by Name | Sorted by Code
--- | ---

Message | Code |  | Code | Message
--- | --- | --- | --- | ---
WM_ACTIVATE | 0x0006 |  | 0x0000 | WM_NULL
WM_ACTIVATEAPP | 0x001C |  | 0x0001 | WM_CREATE
WM_AFXFIRST | 0x0360 |  | 0x0002 | WM_DESTROY
WM_AFXLAST | 0x037F |  | 0x0003 | WM_MOVE
WM_APP | 0x8000 |  | 0x0005 | WM_SIZE
WM_APPCOMMAND | 0x0319 |  | 0x0006 | WM_ACTIVATE
WM_ASKCBFORMATNAME | 0x030C |  | 0x0007 | WM_SETFOCUS
WM_CANCELJOURNAL | 0x004B |  | 0x0008 | WM_KILLFOCUS
WM_CANCELMODE | 0x001F |  | 0x000A | WM_ENABLE
WM_CAPTURECHANGED | 0x0215 |  | 0x000B | WM_SETREDRAW
WM_CHANGECBCHAIN | 0x030D |  | 0x000C | WM_SETTEXT
WM_CHANGEUISTATE | 0x0127 |  | 0x000D | WM_GETTEXT
WM_CHAR | 0x0102 |  | 0x000E | WM_GETTEXTLENGTH
WM_CHARTOITEM | 0x002F |  | 0x000F | WM_PAINT
WM_CHILDACTIVATE | 0x0022 |  | 0x0010 | WM_CLOSE
WM_CLEAR | 0x0303 |  | 0x0011 | WM_QUERYENDSESSION
WM_CLOSE | 0x0010 |  | 0x0013 | WM_QUERYOPEN
WM_COMMAND | 0x0111 |  | 0x0016 | WM_ENDSESSION
WM_COMMNOTIFY | 0x0044 |  | 0x0012 | WM_QUIT
WM_COMPACTING | 0x0041 |  | 0x0014 | WM_ERASEBKGND
WM_COMPAREITEM | 0x0039 |  | 0x0015 | WM_SYSCOLORCHANGE
WM_CONTEXTMENU | 0x007B |  | 0x0018 | WM_SHOWWINDOW
WM_COPY | 0x0301 |  | 0x001A | WM_WININICHANGE
WM_COPYDATA | 0x004A |  | 0x001A | WM_SETTINGCHANGE
WM_CREATE | 0x0001 |  | 0x001B | WM_DEVMODECHANGE
WM_CTLCOLORBTN | 0x0135 |  | 0x001C | WM_ACTIVATEAPP
WM_CTLCOLORDLG | 0x0136 |  | 0x001D | WM_FONTCHANGE
WM_CTLCOLOREDIT | 0x0133 |  | 0x001E | WM_TIMECHANGE
WM_CTLCOLORLISTBOX | 0x0134 |  | 0x001F | WM_CANCELMODE
WM_CTLCOLORMSGBOX | 0x0132 |  | 0x0020 | WM_SETCURSOR
WM_CTLCOLORSCROLLBAR | 0x0137 |  | 0x0021 | WM_MOUSEACTIVATE
WM_CTLCOLORSTATIC | 0x0138 |  | 0x0022 | WM_CHILDACTIVATE
WM_CUT | 0x0300 |  | 0x0023 | WM_QUEUESYNC
WM_DEADCHAR | 0x0103 |  | 0x0024 | WM_GETMINMAXINFO
WM_DELETEITEM | 0x002D |  | 0x0026 | WM_PAINTICON
WM_DESTROY | 0x0002 |  | 0x0027 | WM_ICONERASEBKGND
WM_DESTROYCLIPBOARD | 0x0307 |  | 0x0028 | WM_NEXTDLGCTL
WM_DEVICECHANGE | 0x0219 |  | 0x002A | WM_SPOOLERSTATUS
WM_DEVMODECHANGE | 0x001B |  | 0x002B | WM_DRAWITEM
WM_DISPLAYCHANGE | 0x007E |  | 0x002C | WM_MEASUREITEM
WM_DRAWCLIPBOARD | 0x0308 |  | 0x002D | WM_DELETEITEM
WM_DRAWITEM | 0x002B |  | 0x002E | WM_VKEYTOITEM
WM_DROPFILES | 0x0233 |  | 0x002F | WM_CHARTOITEM
WM_ENABLE | 0x000A |  | 0x0030 | WM_SETFONT
WM_ENDSESSION | 0x0016 |  | 0x0031 | WM_GETFONT
WM_ENTERIDLE | 0x0121 |  | 0x0032 | WM_SETHOTKEY
WM_ENTERMENULOOP | 0x0211 |  | 0x0033 | WM_GETHOTKEY
WM_ENTERSIZEMOVE | 0x0231 |  | 0x0037 | WM_QUERYDRAGICON
WM_ERASEBKGND | 0x0014 |  | 0x0039 | WM_COMPAREITEM
WM_EXITMENULOOP | 0x0212 |  | 0x003D | WM_GETOBJECT
WM_EXITSIZEMOVE | 0x0232 |  | 0x0041 | WM_COMPACTING
WM_FONTCHANGE | 0x001D |  | 0x0044 | WM_COMMNOTIFY
WM_GETDLGCODE | 0x0087 |  | 0x0046 | WM_WINDOWPOSCHANGING
WM_GETFONT | 0x0031 |  | 0x0047 | WM_WINDOWPOSCHANGED
WM_GETHOTKEY | 0x0033 |  | 0x0048 | WM_POWER
WM_GETICON | 0x007F |  | 0x004A | WM_COPYDATA
WM_GETMINMAXINFO | 0x0024 |  | 0x004B | WM_CANCELJOURNAL
WM_GETOBJECT | 0x003D |  | 0x004E | WM_NOTIFY
WM_GETTEXT | 0x000D |  | 0x0050 | WM_INPUTLANGCHANGEREQUEST
WM_GETTEXTLENGTH | 0x000E |  | 0x0051 | WM_INPUTLANGCHANGE
WM_HANDHELDFIRST | 0x0358 |  | 0x0052 | WM_TCARD
WM_HANDHELDLAST | 0x035F |  | 0x0053 | WM_HELP
WM_HELP | 0x0053 |  | 0x0054 | WM_USERCHANGED
WM_HOTKEY | 0x0312 |  | 0x0055 | WM_NOTIFYFORMAT
WM_HSCROLL | 0x0114 |  | 0x007B | WM_CONTEXTMENU
WM_HSCROLLCLIPBOARD | 0x030E |  | 0x007C | WM_STYLECHANGING
WM_ICONERASEBKGND | 0x0027 |  | 0x007D | WM_STYLECHANGED
WM_IME_CHAR | 0x0286 |  | 0x007E | WM_DISPLAYCHANGE
WM_IME_COMPOSITION | 0x010F |  | 0x007F | WM_GETICON
WM_IME_COMPOSITIONFULL | 0x0284 |  | 0x0080 | WM_SETICON
WM_IME_CONTROL | 0x0283 |  | 0x0081 | WM_NCCREATE
WM_IME_ENDCOMPOSITION | 0x010E |  | 0x0082 | WM_NCDESTROY
WM_IME_KEYDOWN | 0x0290 |  | 0x0083 | WM_NCCALCSIZE
WM_IME_KEYLAST | 0x010F |  | 0x0084 | WM_NCHITTEST
WM_IME_KEYUP | 0x0291 |  | 0x0085 | WM_NCPAINT
WM_IME_NOTIFY | 0x0282 |  | 0x0086 | WM_NCACTIVATE
WM_IME_REQUEST | 0x0288 |  | 0x0087 | WM_GETDLGCODE
WM_IME_SELECT | 0x0285 |  | 0x0088 | WM_SYNCPAINT
WM_IME_SETCONTEXT | 0x0281 |  | 0x00A0 | WM_NCMOUSEMOVE
WM_IME_STARTCOMPOSITION | 0x010D |  | 0x00A1 | WM_NCLBUTTONDOWN
WM_INITDIALOG | 0x0110 |  | 0x00A2 | WM_NCLBUTTONUP
WM_INITMENU | 0x0116 |  | 0x00A3 | WM_NCLBUTTONDBLCLK
WM_INITMENUPOPUP | 0x0117 |  | 0x00A4 | WM_NCRBUTTONDOWN
WM_INPUT | 0x00FF |  | 0x00A5 | WM_NCRBUTTONUP
WM_INPUTLANGCHANGE | 0x0051 |  | 0x00A6 | WM_NCRBUTTONDBLCLK
WM_INPUTLANGCHANGEREQUEST | 0x0050 |  | 0x00A7 | WM_NCMBUTTONDOWN
WM_KEYDOWN | 0x0100 |  | 0x00A8 | WM_NCMBUTTONUP
WM_KEYFIRST | 0x0100 |  | 0x00A9 | WM_NCMBUTTONDBLCLK
WM_KEYLAST | 0x0108 |  | 0x00AB | WM_NCXBUTTONDOWN
WM_KEYLAST | 0x0109 |  | 0x00AC | WM_NCXBUTTONUP
WM_KEYUP | 0x0101 |  | 0x00AD | WM_NCXBUTTONDBLCLK
WM_KILLFOCUS | 0x0008 |  | 0x00FF | WM_INPUT
WM_LBUTTONDBLCLK | 0x0203 |  | 0x0100 | WM_KEYFIRST
WM_LBUTTONDOWN | 0x0201 |  | 0x0100 | WM_KEYDOWN
WM_LBUTTONUP | 0x0202 |  | 0x0101 | WM_KEYUP
WM_MBUTTONDBLCLK | 0x0209 |  | 0x0102 | WM_CHAR
WM_MBUTTONDOWN | 0x0207 |  | 0x0103 | WM_DEADCHAR
WM_MBUTTONUP | 0x0208 |  | 0x0104 | WM_SYSKEYDOWN
WM_MDIACTIVATE | 0x0222 |  | 0x0105 | WM_SYSKEYUP
WM_MDICASCADE | 0x0227 |  | 0x0106 | WM_SYSCHAR
WM_MDICREATE | 0x0220 |  | 0x0107 | WM_SYSDEADCHAR
WM_MDIDESTROY | 0x0221 |  | 0x0109 | WM_UNICHAR
WM_MDIGETACTIVE | 0x0229 |  | 0x0109 | WM_KEYLAST
WM_MDIICONARRANGE | 0x0228 |  | 0x0108 | WM_KEYLAST
WM_MDIMAXIMIZE | 0x0225 |  | 0x010D | WM_IME_STARTCOMPOSITION
WM_MDINEXT | 0x0224 |  | 0x010E | WM_IME_ENDCOMPOSITION
WM_MDIREFRESHMENU | 0x0234 |  | 0x010F | WM_IME_COMPOSITION
WM_MDIRESTORE | 0x0223 |  | 0x010F | WM_IME_KEYLAST
WM_MDISETMENU | 0x0230 |  | 0x0110 | WM_INITDIALOG
WM_MDITILE | 0x0226 |  | 0x0111 | WM_COMMAND
WM_MEASUREITEM | 0x002C |  | 0x0112 | WM_SYSCOMMAND
WM_MENUCHAR | 0x0120 |  | 0x0113 | WM_TIMER
WM_MENUCOMMAND | 0x0126 |  | 0x0114 | WM_HSCROLL
WM_MENUDRAG | 0x0123 |  | 0x0115 | WM_VSCROLL
WM_MENUGETOBJECT | 0x0124 |  | 0x0116 | WM_INITMENU
WM_MENURBUTTONUP | 0x0122 |  | 0x0117 | WM_INITMENUPOPUP
WM_MENUSELECT | 0x011F |  | 0x011F | WM_MENUSELECT
WM_MOUSEACTIVATE | 0x0021 |  | 0x0120 | WM_MENUCHAR
WM_MOUSEFIRST | 0x0200 |  | 0x0121 | WM_ENTERIDLE
WM_MOUSEHOVER | 0x02A1 |  | 0x0122 | WM_MENURBUTTONUP
WM_MOUSELAST(2K,XP,2k3) | 0x020D |  | 0x0123 | WM_MENUDRAG
WM_MOUSELAST(95) | 0x0209 |  | 0x0124 | WM_MENUGETOBJECT
WM_MOUSELAST(NT4,98) | 0x020A |  | 0x0125 | WM_UNINITMENUPOPUP
WM_MOUSELEAVE | 0x02A3 |  | 0x0126 | WM_MENUCOMMAND
WM_MOUSEMOVE | 0x0200 |  | 0x0127 | WM_CHANGEUISTATE
WM_MOUSEWHEEL | 0x020A |  | 0x0128 | WM_UPDATEUISTATE
WM_MOVE | 0x0003 |  | 0x0129 | WM_QUERYUISTATE
WM_MOVING | 0x0216 |  | 0x0132 | WM_CTLCOLORMSGBOX
WM_NCACTIVATE | 0x0086 |  | 0x0133 | WM_CTLCOLOREDIT
WM_NCCALCSIZE | 0x0083 |  | 0x0134 | WM_CTLCOLORLISTBOX
WM_NCCREATE | 0x0081 |  | 0x0135 | WM_CTLCOLORBTN
WM_NCDESTROY | 0x0082 |  | 0x0136 | WM_CTLCOLORDLG
WM_NCHITTEST | 0x0084 |  | 0x0137 | WM_CTLCOLORSCROLLBAR
WM_NCLBUTTONDBLCLK | 0x00A3 |  | 0x0138 | WM_CTLCOLORSTATIC
WM_NCLBUTTONDOWN | 0x00A1 |  | 0x0200 | WM_MOUSEFIRST
WM_NCLBUTTONUP | 0x00A2 |  | 0x0200 | WM_MOUSEMOVE
WM_NCMBUTTONDBLCLK | 0x00A9 |  | 0x0201 | WM_LBUTTONDOWN
WM_NCMBUTTONDOWN | 0x00A7 |  | 0x0202 | WM_LBUTTONUP
WM_NCMBUTTONUP | 0x00A8 |  | 0x0203 | WM_LBUTTONDBLCLK
WM_NCMOUSEHOVER | 0x02A0 |  | 0x0204 | WM_RBUTTONDOWN
WM_NCMOUSELEAVE | 0x02A2 |  | 0x0205 | WM_RBUTTONUP
WM_NCMOUSEMOVE | 0x00A0 |  | 0x0206 | WM_RBUTTONDBLCLK
WM_NCPAINT | 0x0085 |  | 0x0207 | WM_MBUTTONDOWN
WM_NCRBUTTONDBLCLK | 0x00A6 |  | 0x0208 | WM_MBUTTONUP
WM_NCRBUTTONDOWN | 0x00A4 |  | 0x0209 | WM_MBUTTONDBLCLK
WM_NCRBUTTONUP | 0x00A5 |  | 0x0209 | WM_MOUSELAST(95)
WM_NCXBUTTONDBLCLK | 0x00AD |  | 0x020A | WM_MOUSEWHEEL
WM_NCXBUTTONDOWN | 0x00AB |  | 0x020A | WM_MOUSELAST(NT4,98)
WM_NCXBUTTONUP | 0x00AC |  | 0x020B | WM_XBUTTONDOWN
WM_NEXTDLGCTL | 0x0028 |  | 0x020C | WM_XBUTTONUP
WM_NEXTMENU | 0x0213 |  | 0x020D | WM_XBUTTONDBLCLK
WM_NOTIFY | 0x004E |  | 0x020D | WM_MOUSELAST(2K,XP,2k3)
WM_NOTIFYFORMAT | 0x0055 |  | 0x0210 | WM_PARENTNOTIFY
WM_NULL | 0x0000 |  | 0x0211 | WM_ENTERMENULOOP
WM_PAINT | 0x000F |  | 0x0212 | WM_EXITMENULOOP
WM_PAINTCLIPBOARD | 0x0309 |  | 0x0213 | WM_NEXTMENU
WM_PAINTICON | 0x0026 |  | 0x0214 | WM_SIZING
WM_PALETTECHANGED | 0x0311 |  | 0x0215 | WM_CAPTURECHANGED
WM_PALETTEISCHANGING | 0x0310 |  | 0x0216 | WM_MOVING
WM_PARENTNOTIFY | 0x0210 |  | 0x0218 | WM_POWERBROADCAST
WM_PASTE | 0x0302 |  | 0x0219 | WM_DEVICECHANGE
WM_PENWINFIRST | 0x0380 |  | 0x0220 | WM_MDICREATE
WM_PENWINLAST | 0x038F |  | 0x0221 | WM_MDIDESTROY
WM_POWER | 0x0048 |  | 0x0222 | WM_MDIACTIVATE
WM_POWERBROADCAST | 0x0218 |  | 0x0223 | WM_MDIRESTORE
WM_PRINT | 0x0317 |  | 0x0224 | WM_MDINEXT
WM_PRINTCLIENT | 0x0318 |  | 0x0225 | WM_MDIMAXIMIZE
WM_QUERYDRAGICON | 0x0037 |  | 0x0226 | WM_MDITILE
WM_QUERYENDSESSION | 0x0011 |  | 0x0227 | WM_MDICASCADE
WM_QUERYNEWPALETTE | 0x030F |  | 0x0228 | WM_MDIICONARRANGE
WM_QUERYOPEN | 0x0013 |  | 0x0229 | WM_MDIGETACTIVE
WM_QUERYUISTATE | 0x0129 |  | 0x0230 | WM_MDISETMENU
WM_QUEUESYNC | 0x0023 |  | 0x0231 | WM_ENTERSIZEMOVE
WM_QUIT | 0x0012 |  | 0x0232 | WM_EXITSIZEMOVE
WM_RBUTTONDBLCLK | 0x0206 |  | 0x0233 | WM_DROPFILES
WM_RBUTTONDOWN | 0x0204 |  | 0x0234 | WM_MDIREFRESHMENU
WM_RBUTTONUP | 0x0205 |  | 0x0281 | WM_IME_SETCONTEXT
WM_RENDERALLFORMATS | 0x0306 |  | 0x0282 | WM_IME_NOTIFY
WM_RENDERFORMAT | 0x0305 |  | 0x0283 | WM_IME_CONTROL
WM_SETCURSOR | 0x0020 |  | 0x0284 | WM_IME_COMPOSITIONFULL
WM_SETFOCUS | 0x0007 |  | 0x0285 | WM_IME_SELECT
WM_SETFONT | 0x0030 |  | 0x0286 | WM_IME_CHAR
WM_SETHOTKEY | 0x0032 |  | 0x0288 | WM_IME_REQUEST
WM_SETICON | 0x0080 |  | 0x0290 | WM_IME_KEYDOWN
WM_SETREDRAW | 0x000B |  | 0x0291 | WM_IME_KEYUP
WM_SETTEXT | 0x000C |  | 0x02A1 | WM_MOUSEHOVER
WM_SETTINGCHANGE | 0x001A |  | 0x02A3 | WM_MOUSELEAVE
WM_SHOWWINDOW | 0x0018 |  | 0x02A0 | WM_NCMOUSEHOVER
WM_SIZE | 0x0005 |  | 0x02A2 | WM_NCMOUSELEAVE
WM_SIZECLIPBOARD | 0x030B |  | 0x02B1 | WM_WTSSESSION_CHANGE
WM_SIZING | 0x0214 |  | 0x02C0 | WM_TABLET_FIRST
WM_SPOOLERSTATUS | 0x002A |  | 0x02DF | WM_TABLET_LAST
WM_STYLECHANGED | 0x007D |  | 0x0300 | WM_CUT
WM_STYLECHANGING | 0x007C |  | 0x0301 | WM_COPY
WM_SYNCPAINT | 0x0088 |  | 0x0302 | WM_PASTE
WM_SYSCHAR | 0x0106 |  | 0x0303 | WM_CLEAR
WM_SYSCOLORCHANGE | 0x0015 |  | 0x0304 | WM_UNDO
WM_SYSCOMMAND | 0x0112 |  | 0x0305 | WM_RENDERFORMAT
WM_SYSDEADCHAR | 0x0107 |  | 0x0306 | WM_RENDERALLFORMATS
WM_SYSKEYDOWN | 0x0104 |  | 0x0307 | WM_DESTROYCLIPBOARD
WM_SYSKEYUP | 0x0105 |  | 0x0308 | WM_DRAWCLIPBOARD
WM_TABLET_FIRST | 0x02C0 |  | 0x0309 | WM_PAINTCLIPBOARD
WM_TABLET_LAST | 0x02DF |  | 0x030A | WM_VSCROLLCLIPBOARD
WM_TCARD | 0x0052 |  | 0x030B | WM_SIZECLIPBOARD
WM_THEMECHANGED | 0x031A |  | 0x030C | WM_ASKCBFORMATNAME
WM_TIMECHANGE | 0x001E |  | 0x030D | WM_CHANGECBCHAIN
WM_TIMER | 0x0113 |  | 0x030E | WM_HSCROLLCLIPBOARD
WM_UNDO | 0x0304 |  | 0x030F | WM_QUERYNEWPALETTE
WM_UNICHAR | 0x0109 |  | 0x0310 | WM_PALETTEISCHANGING
WM_UNINITMENUPOPUP | 0x0125 |  | 0x0311 | WM_PALETTECHANGED
WM_UPDATEUISTATE | 0x0128 |  | 0x0312 | WM_HOTKEY
WM_USER | 0x0400 |  | 0x0317 | WM_PRINT
WM_USERCHANGED | 0x0054 |  | 0x0318 | WM_PRINTCLIENT
WM_VKEYTOITEM | 0x002E |  | 0x0319 | WM_APPCOMMAND
WM_VSCROLL | 0x0115 |  | 0x031A | WM_THEMECHANGED
WM_VSCROLLCLIPBOARD | 0x030A |  | 0x0358 | WM_HANDHELDFIRST
WM_WINDOWPOSCHANGED | 0x0047 |  | 0x035F | WM_HANDHELDLAST
WM_WINDOWPOSCHANGING | 0x0046 |  | 0x0360 | WM_AFXFIRST
WM_WININICHANGE | 0x001A |  | 0x037F | WM_AFXLAST
WM_WTSSESSION_CHANGE | 0x02B1 |  | 0x0380 | WM_PENWINFIRST
WM_XBUTTONDBLCLK | 0x020D |  | 0x038F | WM_PENWINLAST
WM_XBUTTONDOWN | 0x020B |  | 0x0400 | WM_USER
WM_XBUTTONUP | 0x020C |  | 0x8000 | WM_APP