#ifndef _WINUSER_
#define _WINUSER_

#define RT_MANIFEST 24
#define CREATEPROCESS_MANIFEST_RESOURCE_ID 1
#define ISOLATIONAWARE_MANIFEST_RESOURCE_ID 2
#define ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID 3
#define MINIMUM_RESERVED_MANIFEST_RESOURCE_ID 1
#define MAXIMUM_RESERVED_MANIFEST_RESOURCE_ID 16

#define SW_HIDE 0
#define SW_SHOWNORMAL 1
#define SW_NORMAL 1
#define SW_SHOWMINIMIZED 2
#define SW_SHOWMAXIMIZED 3
#define SW_MAXIMIZE 3
#define SW_SHOWNOACTIVATE 4
#define SW_SHOW 5
#define SW_MINIMIZE 6
#define SW_SHOWMINNOACTIVE 7
#define SW_SHOWNA 8
#define SW_RESTORE 9
#define SW_SHOWDEFAULT 10
#define SW_FORCEMINIMIZE 11
#define SW_MAX 11

#define HIDE_WINDOW 0
#define SHOW_OPENWINDOW 1
#define SHOW_ICONWINDOW 2
#define SHOW_FULLSCREEN 3
#define SHOW_OPENNOACTIVATE 4

#define SW_PARENTCLOSING 1
#define SW_OTHERZOOM 2
#define SW_PARENTOPENING 3
#define SW_OTHERUNZOOM 4

#define VK_LBUTTON 0x1
#define VK_RBUTTON 0x2
#define VK_CANCEL 0x3
#define VK_MBUTTON 0x4
#define VK_XBUTTON1 0x5
#define VK_XBUTTON2 0x6
#define VK_BACK 0x8
#define VK_TAB 0x9
#define VK_CLEAR 0xC
#define VK_RETURN 0xD

#define VK_SHIFT 0x10
#define VK_CONTROL 0x11
#define VK_MENU 0x12
#define VK_PAUSE 0x13
#define VK_CAPITAL 0x14

#define VK_KANA 0x15
#define VK_HANGEUL 0x15
#define VK_HANGUL 0x15
#define VK_JUNJA 0x17
#define VK_FINAL 0x18
#define VK_HANJA 0x19
#define VK_KANJI 0x19

#define VK_ESCAPE 0x1B

#define VK_CONVERT 0x1C
#define VK_NONCONVERT 0x1D
#define VK_ACCEPT 0x1E
#define VK_MODECHANGE 0x1F

#define VK_SPACE 0x20
#define VK_PRIOR 0x21
#define VK_NEXT 0x22
#define VK_END 0x23
#define VK_HOME 0x24
#define VK_LEFT 0x25
#define VK_UP 0x26
#define VK_RIGHT 0x27
#define VK_DOWN 0x28
#define VK_SELECT 0x29
#define VK_PRINT 0x2A
#define VK_EXECUTE 0x2B
#define VK_SNAPSHOT 0x2C
#define VK_INSERT 0x2D
#define VK_DELETE 0x2E
#define VK_HELP 0x2F

#define VK_LWIN 0x5B
#define VK_RWIN 0x5C
#define VK_APPS 0x5D

#define VK_SLEEP 0x5F

#define VK_NUMPAD0 0x60
#define VK_NUMPAD1 0x61
#define VK_NUMPAD2 0x62
#define VK_NUMPAD3 0x63
#define VK_NUMPAD4 0x64
#define VK_NUMPAD5 0x65
#define VK_NUMPAD6 0x66
#define VK_NUMPAD7 0x67
#define VK_NUMPAD8 0x68
#define VK_NUMPAD9 0x69
#define VK_MULTIPLY 0x6A
#define VK_ADD 0x6B
#define VK_SEPARATOR 0x6C
#define VK_SUBTRACT 0x6D
#define VK_DECIMAL 0x6E
#define VK_DIVIDE 0x6F
#define VK_F1 0x70
#define VK_F2 0x71
#define VK_F3 0x72
#define VK_F4 0x73
#define VK_F5 0x74
#define VK_F6 0x75
#define VK_F7 0x76
#define VK_F8 0x77
#define VK_F9 0x78
#define VK_F10 0x79
#define VK_F11 0x7A
#define VK_F12 0x7B
#define VK_F13 0x7C
#define VK_F14 0x7D
#define VK_F15 0x7E
#define VK_F16 0x7F
#define VK_F17 0x80
#define VK_F18 0x81
#define VK_F19 0x82
#define VK_F20 0x83
#define VK_F21 0x84
#define VK_F22 0x85
#define VK_F23 0x86
#define VK_F24 0x87

#define VK_NUMLOCK 0x90
#define VK_SCROLL 0x91

#define VK_OEM_NEC_EQUAL 0x92

#define VK_OEM_FJ_JISHO 0x92
#define VK_OEM_FJ_MASSHOU 0x93
#define VK_OEM_FJ_TOUROKU 0x94
#define VK_OEM_FJ_LOYA 0x95
#define VK_OEM_FJ_ROYA 0x96

#define VK_LSHIFT 0xA0
#define VK_RSHIFT 0xA1
#define VK_LCONTROL 0xA2
#define VK_RCONTROL 0xA3
#define VK_LMENU 0xA4
#define VK_RMENU 0xA5

#define VK_BROWSER_BACK 0xA6
#define VK_BROWSER_FORWARD 0xA7
#define VK_BROWSER_REFRESH 0xA8
#define VK_BROWSER_STOP 0xA9
#define VK_BROWSER_SEARCH 0xAA
#define VK_BROWSER_FAVORITES 0xAB
#define VK_BROWSER_HOME 0xAC

#define VK_VOLUME_MUTE 0xAD
#define VK_VOLUME_DOWN 0xAE
#define VK_VOLUME_UP 0xAF
#define VK_MEDIA_NEXT_TRACK 0xB0
#define VK_MEDIA_PREV_TRACK 0xB1
#define VK_MEDIA_STOP 0xB2
#define VK_MEDIA_PLAY_PAUSE 0xB3
#define VK_LAUNCH_MAIL 0xB4
#define VK_LAUNCH_MEDIA_SELECT 0xB5
#define VK_LAUNCH_APP1 0xB6
#define VK_LAUNCH_APP2 0xB7

#define VK_OEM_1 0xBA
#define VK_OEM_PLUS 0xBB
#define VK_OEM_COMMA 0xBC
#define VK_OEM_MINUS 0xBD
#define VK_OEM_PERIOD 0xBE
#define VK_OEM_2 0xBF
#define VK_OEM_3 0xC0

#define VK_OEM_4 0xDB
#define VK_OEM_5 0xDC
#define VK_OEM_6 0xDD
#define VK_OEM_7 0xDE
#define VK_OEM_8 0xDF

#define VK_OEM_AX 0xE1
#define VK_OEM_102 0xE2
#define VK_ICO_HELP 0xE3
#define VK_ICO_00 0xE4
#define VK_PROCESSKEY 0xE5
#define VK_ICO_CLEAR 0xE6

#define VK_PACKET 0xE7

#define VK_OEM_RESET 0xE9
#define VK_OEM_JUMP 0xEA
#define VK_OEM_PA1 0xEB
#define VK_OEM_PA2 0xEC
#define VK_OEM_PA3 0xED
#define VK_OEM_WSCTRL 0xEE
#define VK_OEM_CUSEL 0xEF
#define VK_OEM_ATTN 0xF0
#define VK_OEM_FINISH 0xF1
#define VK_OEM_COPY 0xF2
#define VK_OEM_AUTO 0xF3
#define VK_OEM_ENLW 0xF4
#define VK_OEM_BACKTAB 0xF5

#define VK_ATTN 0xF6
#define VK_CRSEL 0xF7
#define VK_EXSEL 0xF8
#define VK_EREOF 0xF9
#define VK_PLAY 0xFA
#define VK_ZOOM 0xFB
#define VK_NONAME 0xFC
#define VK_PA1 0xFD
#define VK_OEM_CLEAR 0xFE

#define WM_NULL 0
#define WM_CREATE 0x1
#define WM_DESTROY 0x2
#define WM_MOVE 0x3
#define WM_SIZE 0x5

#define WM_ACTIVATE 0x6

#define WA_INACTIVE 0
#define WA_ACTIVE 1
#define WA_CLICKACTIVE 2

#define WM_SETFOCUS 0x7
#define WM_KILLFOCUS 0x8
#define WM_ENABLE 0xA
#define WM_SETREDRAW 0xB
#define WM_SETTEXT 0xC
#define WM_GETTEXT 0xD
#define WM_GETTEXTLENGTH 0xE
#define WM_PAINT 0xF
#define WM_CLOSE 0x10
#ifndef _WIN32_WCE
#define WM_QUERYENDSESSION 0x11
#define WM_QUERYOPEN 0x13
#define WM_ENDSESSION 0x16
#endif
#define WM_QUIT 0x12
#define WM_ERASEBKGND 0x14
#define WM_SYSCOLORCHANGE 0x15
#define WM_SHOWWINDOW 0x18
#define WM_WININICHANGE 0x1A
#define WM_SETTINGCHANGE WM_WININICHANGE

#define WM_DEVMODECHANGE 0x1B
#define WM_ACTIVATEAPP 0x1C
#define WM_FONTCHANGE 0x1D
#define WM_TIMECHANGE 0x1E
#define WM_CANCELMODE 0x1F
#define WM_SETCURSOR 0x20
#define WM_MOUSEACTIVATE 0x21
#define WM_CHILDACTIVATE 0x22
#define WM_QUEUESYNC 0x23

#define WM_GETMINMAXINFO 0x24
#define WM_PAINTICON 0x26
#define WM_ICONERASEBKGND 0x27
#define WM_NEXTDLGCTL 0x28
#define WM_SPOOLERSTATUS 0x2A
#define WM_DRAWITEM 0x2B
#define WM_MEASUREITEM 0x2C
#define WM_DELETEITEM 0x2D
#define WM_VKEYTOITEM 0x2E
#define WM_CHARTOITEM 0x2F
#define WM_SETFONT 0x30
#define WM_GETFONT 0x31
#define WM_SETHOTKEY 0x32
#define WM_GETHOTKEY 0x33
#define WM_QUERYDRAGICON 0x37
#define WM_COMPAREITEM 0x39
#ifndef _WIN32_WCE
#define WM_GETOBJECT 0x3D
#endif
#define WM_COMPACTING 0x41
#define WM_COMMNOTIFY 0x44
#define WM_WINDOWPOSCHANGING 0x46
#define WM_WINDOWPOSCHANGED 0x47

#define WM_POWER 0x48

#define PWR_OK 1
#define PWR_FAIL (-1)
#define PWR_SUSPENDREQUEST 1
#define PWR_SUSPENDRESUME 2
#define PWR_CRITICALRESUME 3

#define WM_COPYDATA 0x4A
#define WM_CANCELJOURNAL 0x4B

#define WM_NOTIFY 0x4E
#define WM_INPUTLANGCHANGEREQUEST 0x50
#define WM_INPUTLANGCHANGE 0x51
#define WM_TCARD 0x52
#define WM_HELP 0x53
#define WM_USERCHANGED 0x54
#define WM_NOTIFYFORMAT 0x55

#define NFR_ANSI 1
#define NFR_UNICODE 2
#define NF_QUERY 3
#define NF_REQUERY 4

#define WM_CONTEXTMENU 0x7B
#define WM_STYLECHANGING 0x7C
#define WM_STYLECHANGED 0x7D
#define WM_DISPLAYCHANGE 0x7E
#define WM_GETICON 0x7F
#define WM_SETICON 0x80

#define WM_NCCREATE 0x81
#define WM_NCDESTROY 0x82
#define WM_NCCALCSIZE 0x83
#define WM_NCHITTEST 0x84
#define WM_NCPAINT 0x85
#define WM_NCACTIVATE 0x86
#define WM_GETDLGCODE 0x87
#ifndef _WIN32_WCE
#define WM_SYNCPAINT 0x88
#endif
#define WM_NCMOUSEMOVE 0xA0
#define WM_NCLBUTTONDOWN 0xA1
#define WM_NCLBUTTONUP 0xA2
#define WM_NCLBUTTONDBLCLK 0xA3
#define WM_NCRBUTTONDOWN 0xA4
#define WM_NCRBUTTONUP 0xA5
#define WM_NCRBUTTONDBLCLK 0xA6
#define WM_NCMBUTTONDOWN 0xA7
#define WM_NCMBUTTONUP 0xA8
#define WM_NCMBUTTONDBLCLK 0xA9

#define WM_NCXBUTTONDOWN 0xAB
#define WM_NCXBUTTONUP 0xAC
#define WM_NCXBUTTONDBLCLK 0xAD
#define WM_INPUT 0xFF
#define WM_KEYFIRST 0x100
#define WM_KEYDOWN 0x100
#define WM_KEYUP 0x101
#define WM_CHAR 0x102
#define WM_DEADCHAR 0x103
#define WM_SYSKEYDOWN 0x104
#define WM_SYSKEYUP 0x105
#define WM_SYSCHAR 0x106
#define WM_SYSDEADCHAR 0x107
#define WM_UNICHAR 0x109
#define WM_KEYLAST 0x109
#define UNICODE_NOCHAR 0xFFFF

#define WM_IME_STARTCOMPOSITION 0x10D
#define WM_IME_ENDCOMPOSITION 0x10E
#define WM_IME_COMPOSITION 0x10F
#define WM_IME_KEYLAST 0x10F
#define WM_INITDIALOG 0x110
#define WM_COMMAND 0x111
#define WM_SYSCOMMAND 0x112
#define WM_TIMER 0x113
#define WM_HSCROLL 0x114
#define WM_VSCROLL 0x115
#define WM_INITMENU 0x116
#define WM_INITMENUPOPUP 0x117
#define WM_MENUSELECT 0x11F
#define WM_MENUCHAR 0x120
#define WM_ENTERIDLE 0x121
#ifndef _WIN32_WCE
#define WM_MENURBUTTONUP 0x122
#define WM_MENUDRAG 0x123
#define WM_MENUGETOBJECT 0x124
#define WM_UNINITMENUPOPUP 0x125
#define WM_MENUCOMMAND 0x126

#ifndef _WIN32_WCE
#define WM_CHANGEUISTATE 0x127
#define WM_UPDATEUISTATE 0x128
#define WM_QUERYUISTATE 0x129

#define UIS_SET 1
#define UIS_CLEAR 2
#define UIS_INITIALIZE 3

#define UISF_HIDEFOCUS 0x1
#define UISF_HIDEACCEL 0x2
#define UISF_ACTIVE 0x4
#endif
#endif

#define WM_CTLCOLORMSGBOX 0x132
#define WM_CTLCOLOREDIT 0x133
#define WM_CTLCOLORLISTBOX 0x134
#define WM_CTLCOLORBTN 0x135
#define WM_CTLCOLORDLG 0x136
#define WM_CTLCOLORSCROLLBAR 0x137
#define WM_CTLCOLORSTATIC 0x138
#define MN_GETHMENU 0x1E1

#define WM_MOUSEFIRST 0x200
#define WM_MOUSEMOVE 0x200
#define WM_LBUTTONDOWN 0x201
#define WM_LBUTTONUP 0x202
#define WM_LBUTTONDBLCLK 0x203
#define WM_RBUTTONDOWN 0x204
#define WM_RBUTTONUP 0x205
#define WM_RBUTTONDBLCLK 0x206
#define WM_MBUTTONDOWN 0x207
#define WM_MBUTTONUP 0x208
#define WM_MBUTTONDBLCLK 0x209
#define WM_MOUSEWHEEL 0x20A
#define WM_XBUTTONDOWN 0x20B
#define WM_XBUTTONUP 0x20C
#define WM_XBUTTONDBLCLK 0x20D
#define WM_MOUSELAST 0x20D
#define WHEEL_DELTA 120
#define GET_WHEEL_DELTA_WPARAM(wParam) ((short)HIWORD(wParam))

#define WHEEL_PAGESCROLL (UINT_MAX)

#define GET_KEYSTATE_WPARAM(wParam) (LOWORD(wParam))
#define GET_NCHITTEST_WPARAM(wParam) ((short)LOWORD(wParam))
#define GET_XBUTTON_WPARAM(wParam) (HIWORD(wParam))

#define XBUTTON1 0x1
#define XBUTTON2 0x2

#define WM_PARENTNOTIFY 0x210
#define WM_ENTERMENULOOP 0x211
#define WM_EXITMENULOOP 0x212

#define WM_NEXTMENU 0x213
#define WM_SIZING 0x214
#define WM_CAPTURECHANGED 0x215
#define WM_MOVING 0x216
#define WM_POWERBROADCAST 0x218
#define WM_DEVICECHANGE 0x219
#define WM_MDICREATE 0x220
#define WM_MDIDESTROY 0x221
#define WM_MDIACTIVATE 0x222
#define WM_MDIRESTORE 0x223
#define WM_MDINEXT 0x224
#define WM_MDIMAXIMIZE 0x225
#define WM_MDITILE 0x226
#define WM_MDICASCADE 0x227
#define WM_MDIICONARRANGE 0x228
#define WM_MDIGETACTIVE 0x229

#define WM_MDISETMENU 0x230
#define WM_ENTERSIZEMOVE 0x231
#define WM_EXITSIZEMOVE 0x232
#define WM_DROPFILES 0x233
#define WM_MDIREFRESHMENU 0x234

#define WM_IME_SETCONTEXT 0x281
#define WM_IME_NOTIFY 0x282
#define WM_IME_CONTROL 0x283
#define WM_IME_COMPOSITIONFULL 0x284
#define WM_IME_SELECT 0x285
#define WM_IME_CHAR 0x286
#define WM_IME_REQUEST 0x288
#define WM_IME_KEYDOWN 0x290
#define WM_IME_KEYUP 0x291

#define WM_MOUSEHOVER 0x2A1
#define WM_MOUSELEAVE 0x2A3
#define WM_NCMOUSEHOVER 0x2A0
#define WM_NCMOUSELEAVE 0x2A2

#define WM_WTSSESSION_CHANGE 0x2B1

#define WM_TABLET_FIRST 0x2c0
#define WM_TABLET_LAST 0x2df
#define WM_CUT 0x300
#define WM_COPY 0x301
#define WM_PASTE 0x302
#define WM_CLEAR 0x303
#define WM_UNDO 0x304
#define WM_RENDERFORMAT 0x305
#define WM_RENDERALLFORMATS 0x306
#define WM_DESTROYCLIPBOARD 0x307
#define WM_DRAWCLIPBOARD 0x308
#define WM_PAINTCLIPBOARD 0x309
#define WM_VSCROLLCLIPBOARD 0x30A
#define WM_SIZECLIPBOARD 0x30B
#define WM_ASKCBFORMATNAME 0x30C
#define WM_CHANGECBCHAIN 0x30D
#define WM_HSCROLLCLIPBOARD 0x30E
#define WM_QUERYNEWPALETTE 0x30F
#define WM_PALETTEISCHANGING 0x310
#define WM_PALETTECHANGED 0x311
#define WM_HOTKEY 0x312

#define WM_PRINT 0x317
#define WM_PRINTCLIENT 0x318

#define WM_APPCOMMAND 0x319
#define WM_THEMECHANGED 0x31A
#define WM_HANDHELDFIRST 0x358
#define WM_HANDHELDLAST 0x35F
#define WM_AFXFIRST 0x360
#define WM_AFXLAST 0x37F
#define WM_PENWINFIRST 0x380
#define WM_PENWINLAST 0x38F
#define WM_APP 0x8000
#define WM_USER 0x400

#define WMSZ_LEFT 1
#define WMSZ_RIGHT 2
#define WMSZ_TOP 3
#define WMSZ_TOPLEFT 4
#define WMSZ_TOPRIGHT 5
#define WMSZ_BOTTOM 6
#define WMSZ_BOTTOMLEFT 7
#define WMSZ_BOTTOMRIGHT 8

#ifndef NONCMESSAGES

#define HTERROR (-2)
#define HTTRANSPARENT (-1)
#define HTNOWHERE 0
#define HTCLIENT 1
#define HTCAPTION 2
#define HTSYSMENU 3
#define HTGROWBOX 4
#define HTSIZE HTGROWBOX
#define HTMENU 5
#define HTHSCROLL 6
#define HTVSCROLL 7
#define HTMINBUTTON 8
#define HTMAXBUTTON 9
#define HTLEFT 10
#define HTRIGHT 11
#define HTTOP 12
#define HTTOPLEFT 13
#define HTTOPRIGHT 14
#define HTBOTTOM 15
#define HTBOTTOMLEFT 16
#define HTBOTTOMRIGHT 17
#define HTBORDER 18
#define HTREDUCE HTMINBUTTON
#define HTZOOM HTMAXBUTTON
#define HTSIZEFIRST HTLEFT
#define HTSIZELAST HTBOTTOMRIGHT
#define HTOBJECT 19
#define HTCLOSE 20
#define HTHELP 21

#define SMTO_NORMAL 0
#define SMTO_BLOCK 0x1
#define SMTO_ABORTIFHUNG 0x2
#define SMTO_NOTIMEOUTIFNOTHUNG 0x8
#endif

#define MA_ACTIVATE 1
#define MA_ACTIVATEANDEAT 2
#define MA_NOACTIVATE 3
#define MA_NOACTIVATEANDEAT 4

#define ICON_SMALL 0
#define ICON_BIG 1
#define ICON_SMALL2 2
#define SIZE_RESTORED 0
#define SIZE_MINIMIZED 1
#define SIZE_MAXIMIZED 2
#define SIZE_MAXSHOW 3
#define SIZE_MAXHIDE 4

#define SIZENORMAL SIZE_RESTORED
#define SIZEICONIC SIZE_MINIMIZED
#define SIZEFULLSCREEN SIZE_MAXIMIZED
#define SIZEZOOMSHOW SIZE_MAXSHOW
#define SIZEZOOMHIDE SIZE_MAXHIDE

#define WVR_ALIGNTOP 0x10
#define WVR_ALIGNLEFT 0x20
#define WVR_ALIGNBOTTOM 0x40
#define WVR_ALIGNRIGHT 0x80
#define WVR_HREDRAW 0x100
#define WVR_VREDRAW 0x200
#define WVR_REDRAW (WVR_HREDRAW | WVR_VREDRAW)
#define WVR_VALIDRECTS 0x400

#ifndef NOKEYSTATES

#define MK_LBUTTON 0x1
#define MK_RBUTTON 0x2
#define MK_SHIFT 0x4
#define MK_CONTROL 0x8
#define MK_MBUTTON 0x10
#define MK_XBUTTON1 0x20
#define MK_XBUTTON2 0x40
#endif

#ifndef NOTRACKMOUSEEVENT
#define TME_HOVER 0x1
#define TME_LEAVE 0x2
#define TME_NONCLIENT 0x10
#define TME_QUERY 0x40000000
#define TME_CANCEL 0x80000000

#define HOVER_DEFAULT 0xFFFFFFFF
#endif

#define WS_OVERLAPPED 0xL
#define WS_POPUP 0x80000000L
#define WS_CHILD 0x40000000L
#define WS_MINIMIZE 0x20000000L
#define WS_VISIBLE 0x10000000L
#define WS_DISABLED 0x8000000L
#define WS_CLIPSIBLINGS 0x4000000L
#define WS_CLIPCHILDREN 0x2000000L
#define WS_MAXIMIZE 0x1000000L
#define WS_CAPTION 0xC00000L
#define WS_BORDER 0x800000L
#define WS_DLGFRAME 0x400000L
#define WS_VSCROLL 0x200000L
#define WS_HSCROLL 0x100000L
#define WS_SYSMENU 0x80000L
#define WS_THICKFRAME 0x40000L
#define WS_GROUP 0x20000L
#define WS_TABSTOP 0x10000L

#define WS_MINIMIZEBOX 0x20000L
#define WS_MAXIMIZEBOX 0x10000L

#define WS_TILED WS_OVERLAPPED
#define WS_ICONIC WS_MINIMIZE
#define WS_SIZEBOX WS_THICKFRAME
#define WS_TILEDWINDOW WS_OVERLAPPEDWINDOW

#define WS_OVERLAPPEDWINDOW (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX)

#define WS_POPUPWINDOW (WS_POPUP | WS_BORDER | WS_SYSMENU)

#define WS_CHILDWINDOW (WS_CHILD)

#define WS_EX_DLGMODALFRAME 0x1L
#define WS_EX_NOPARENTNOTIFY 0x4L
#define WS_EX_TOPMOST 0x8L
#define WS_EX_ACCEPTFILES 0x10L
#define WS_EX_TRANSPARENT 0x20L
#define WS_EX_MDICHILD 0x40L
#define WS_EX_TOOLWINDOW 0x80L
#define WS_EX_WINDOWEDGE 0x100L
#define WS_EX_CLIENTEDGE 0x200L
#define WS_EX_CONTEXTHELP 0x400L
#define WS_EX_RIGHT 0x1000L
#define WS_EX_LEFT 0xL
#define WS_EX_RTLREADING 0x2000L
#define WS_EX_LTRREADING 0xL
#define WS_EX_LEFTSCROLLBAR 0x4000L
#define WS_EX_RIGHTSCROLLBAR 0xL

#define WS_EX_CONTROLPARENT 0x10000L
#define WS_EX_STATICEDGE 0x20000L
#define WS_EX_APPWINDOW 0x40000L

#define WS_EX_OVERLAPPEDWINDOW (WS_EX_WINDOWEDGE | WS_EX_CLIENTEDGE)
#define WS_EX_PALETTEWINDOW (WS_EX_WINDOWEDGE | WS_EX_TOOLWINDOW | WS_EX_TOPMOST)
#define WS_EX_LAYERED 0x80000
#define WS_EX_NOINHERITLAYOUT 0x100000L
#define WS_EX_LAYOUTRTL 0x400000L
#define WS_EX_COMPOSITED 0x2000000L
#define WS_EX_NOACTIVATE 0x8000000L

#define CS_VREDRAW 0x1
#define CS_HREDRAW 0x2
#define CS_DBLCLKS 0x8
#define CS_OWNDC 0x20
#define CS_CLASSDC 0x40
#define CS_PARENTDC 0x80
#define CS_NOCLOSE 0x200
#define CS_SAVEBITS 0x800
#define CS_BYTEALIGNCLIENT 0x1000
#define CS_BYTEALIGNWINDOW 0x2000
#define CS_GLOBALCLASS 0x4000
#define CS_IME 0x10000
#define CS_DROPSHADOW 0x20000

#define CF_TEXT 1
#define CF_BITMAP 2
#define CF_METAFILEPICT 3
#define CF_SYLK 4
#define CF_DIF 5
#define CF_TIFF 6
#define CF_OEMTEXT 7
#define CF_DIB 8
#define CF_PALETTE 9
#define CF_PENDATA 10
#define CF_RIFF 11
#define CF_WAVE 12
#define CF_UNICODETEXT 13
#define CF_ENHMETAFILE 14
#define CF_HDROP 15
#define CF_LOCALE 16
#define CF_DIBV5 17

#define CF_MAX 18

#define CF_OWNERDISPLAY 0x80
#define CF_DSPTEXT 0x81
#define CF_DSPBITMAP 0x82
#define CF_DSPMETAFILEPICT 0x83
#define CF_DSPENHMETAFILE 0x8E

#define CF_PRIVATEFIRST 0x200
#define CF_PRIVATELAST 0x2FF

#define CF_GDIOBJFIRST 0x300
#define CF_GDIOBJLAST 0x3FF

#define MF_INSERT 0xL
#define MF_CHANGE 0x80L
#define MF_APPEND 0x100L
#define MF_DELETE 0x200L
#define MF_REMOVE 0x1000L

#define MF_BYCOMMAND 0xL
#define MF_BYPOSITION 0x400L

#define MF_SEPARATOR 0x800L

#define MF_ENABLED 0xL
#define MF_GRAYED 0x1L
#define MF_DISABLED 0x2L

#define MF_UNCHECKED 0xL
#define MF_CHECKED 0x8L
#define MF_USECHECKBITMAPS 0x200L

#define MF_STRING 0xL
#define MF_BITMAP 0x4L
#define MF_OWNERDRAW 0x100L

#define MF_POPUP 0x10L
#define MF_MENUBARBREAK 0x20L
#define MF_MENUBREAK 0x40L

#define MF_UNHILITE 0xL
#define MF_HILITE 0x80L

#define MF_DEFAULT 0x1000L
#define MF_SYSMENU 0x2000L
#define MF_HELP 0x4000L
#define MF_RIGHTJUSTIFY 0x4000L
#define MF_MOUSESELECT 0x8000L
#define MF_END 0x80L
#define MFT_STRING MF_STRING
#define MFT_BITMAP MF_BITMAP
#define MFT_MENUBARBREAK MF_MENUBARBREAK
#define MFT_MENUBREAK MF_MENUBREAK
#define MFT_OWNERDRAW MF_OWNERDRAW
#define MFT_RADIOCHECK 0x200L
#define MFT_SEPARATOR MF_SEPARATOR
#define MFT_RIGHTORDER 0x2000L
#define MFT_RIGHTJUSTIFY MF_RIGHTJUSTIFY

#define MFS_GRAYED 0x3L
#define MFS_DISABLED MFS_GRAYED
#define MFS_CHECKED MF_CHECKED
#define MFS_HILITE MF_HILITE
#define MFS_ENABLED MF_ENABLED
#define MFS_UNCHECKED MF_UNCHECKED
#define MFS_UNHILITE MF_UNHILITE
#define MFS_DEFAULT MF_DEFAULT

#define MF_END 0x80L

#define SC_SIZE 0xF000
#define SC_MOVE 0xF010
#define SC_MINIMIZE 0xF020
#define SC_MAXIMIZE 0xF030
#define SC_NEXTWINDOW 0xF040
#define SC_PREVWINDOW 0xF050
#define SC_CLOSE 0xF060
#define SC_VSCROLL 0xF070
#define SC_HSCROLL 0xF080
#define SC_MOUSEMENU 0xF090
#define SC_KEYMENU 0xF100
#define SC_ARRANGE 0xF110
#define SC_RESTORE 0xF120
#define SC_TASKLIST 0xF130
#define SC_SCREENSAVE 0xF140
#define SC_HOTKEY 0xF150
#define SC_DEFAULT 0xF160
#define SC_MONITORPOWER 0xF170
#define SC_CONTEXTHELP 0xF180
#define SC_SEPARATOR 0xF00F

#define SC_ICON SC_MINIMIZE
#define SC_ZOOM SC_MAXIMIZE

#define OBM_CLOSE 32754
#define OBM_UPARROW 32753
#define OBM_DNARROW 32752
#define OBM_RGARROW 32751
#define OBM_LFARROW 32750
#define OBM_REDUCE 32749
#define OBM_ZOOM 32748
#define OBM_RESTORE 32747
#define OBM_REDUCED 32746
#define OBM_ZOOMD 32745
#define OBM_RESTORED 32744
#define OBM_UPARROWD 32743
#define OBM_DNARROWD 32742
#define OBM_RGARROWD 32741
#define OBM_LFARROWD 32740
#define OBM_MNARROW 32739
#define OBM_COMBO 32738
#define OBM_UPARROWI 32737
#define OBM_DNARROWI 32736
#define OBM_RGARROWI 32735
#define OBM_LFARROWI 32734

#define OBM_OLD_CLOSE 32767
#define OBM_SIZE 32766
#define OBM_OLD_UPARROW 32765
#define OBM_OLD_DNARROW 32764
#define OBM_OLD_RGARROW 32763
#define OBM_OLD_LFARROW 32762
#define OBM_BTSIZE 32761
#define OBM_CHECK 32760
#define OBM_CHECKBOXES 32759
#define OBM_BTNCORNERS 32758
#define OBM_OLD_REDUCE 32757
#define OBM_OLD_ZOOM 32756
#define OBM_OLD_RESTORE 32755

#define OCR_NORMAL 32512
#define OCR_IBEAM 32513
#define OCR_WAIT 32514
#define OCR_CROSS 32515
#define OCR_UP 32516
#define OCR_SIZE 32640
#define OCR_ICON 32641
#define OCR_SIZENWSE 32642
#define OCR_SIZENESW 32643
#define OCR_SIZEWE 32644
#define OCR_SIZENS 32645
#define OCR_SIZEALL 32646
#define OCR_ICOCUR 32647
#define OCR_NO 32648
#define OCR_HAND 32649
#define OCR_APPSTARTING 32650

#define OIC_SAMPLE 32512
#define OIC_HAND 32513
#define OIC_QUES 32514
#define OIC_BANG 32515
#define OIC_NOTE 32516
#define OIC_WINLOGO 32517
#define OIC_WARNING OIC_BANG
#define OIC_ERROR OIC_HAND
#define OIC_INFORMATION OIC_NOTE

#ifdef RC_INVOKED
#define IDI_APPLICATION 32512
#define IDI_HAND 32513
#define IDI_QUESTION 32514
#define IDI_EXCLAMATION 32515
#define IDI_ASTERISK 32516
#define IDI_WINLOGO 32517
#else
#define IDI_APPLICATION MAKEINTRESOURCE(32512)
#define IDI_HAND MAKEINTRESOURCE(32513)
#define IDI_QUESTION MAKEINTRESOURCE(32514)
#define IDI_EXCLAMATION MAKEINTRESOURCE(32515)
#define IDI_ASTERISK MAKEINTRESOURCE(32516)
#define IDI_WINLOGO MAKEINTRESOURCE(32517)
#endif

#define IDI_WARNING IDI_EXCLAMATION
#define IDI_ERROR IDI_HAND
#define IDI_INFORMATION IDI_ASTERISK

#define IDOK 1
#define IDCANCEL 2
#define IDABORT 3
#define IDRETRY 4
#define IDIGNORE 5
#define IDYES 6
#define IDNO 7
#define IDCLOSE 8
#define IDHELP 9

#define IDTRYAGAIN 10
#define IDCONTINUE 11

#ifndef IDTIMEOUT
#define IDTIMEOUT 32000
#endif

#define ES_LEFT 0xL
#define ES_CENTER 0x1L
#define ES_RIGHT 0x2L
#define ES_MULTILINE 0x4L
#define ES_UPPERCASE 0x8L
#define ES_LOWERCASE 0x10L
#define ES_PASSWORD 0x20L
#define ES_AUTOVSCROLL 0x40L
#define ES_AUTOHSCROLL 0x80L
#define ES_NOHIDESEL 0x100L
#define ES_OEMCONVERT 0x400L
#define ES_READONLY 0x800L
#define ES_WANTRETURN 0x1000L
#define ES_NUMBER 0x2000L

#define EM_GETSEL 0xB0
#define EM_SETSEL 0xB1
#define EM_GETRECT 0xB2
#define EM_SETRECT 0xB3
#define EM_SETRECTNP 0xB4
#define EM_SCROLL 0xB5
#define EM_LINESCROLL 0xB6
#define EM_SCROLLCARET 0xB7
#define EM_GETMODIFY 0xB8
#define EM_SETMODIFY 0xB9
#define EM_GETLINECOUNT 0xBA
#define EM_LINEINDEX 0xBB
#define EM_SETHANDLE 0xBC
#define EM_GETHANDLE 0xBD
#define EM_GETTHUMB 0xBE
#define EM_LINELENGTH 0xC1
#define EM_REPLACESEL 0xC2
#define EM_GETLINE 0xC4
#define EM_LIMITTEXT 0xC5
#define EM_CANUNDO 0xC6
#define EM_UNDO 0xC7
#define EM_FMTLINES 0xC8
#define EM_LINEFROMCHAR 0xC9
#define EM_SETTABSTOPS 0xCB
#define EM_SETPASSWORDCHAR 0xCC
#define EM_EMPTYUNDOBUFFER 0xCD
#define EM_GETFIRSTVISIBLELINE 0xCE
#define EM_SETREADONLY 0xCF
#define EM_SETWORDBREAKPROC 0xD0
#define EM_GETWORDBREAKPROC 0xD1
#define EM_GETPASSWORDCHAR 0xD2
#define EM_SETMARGINS 0xD3
#define EM_GETMARGINS 0xD4
#define EM_SETLIMITTEXT EM_LIMITTEXT
#define EM_GETLIMITTEXT 0xD5
#define EM_POSFROMCHAR 0xD6
#define EM_CHARFROMPOS 0xD7
#define EM_SETIMESTATUS 0xD8
#define EM_GETIMESTATUS 0xD9

#define BS_PUSHBUTTON 0xL
#define BS_DEFPUSHBUTTON 0x1L
#define BS_CHECKBOX 0x2L
#define BS_AUTOCHECKBOX 0x3L
#define BS_RADIOBUTTON 0x4L
#define BS_3STATE 0x5L
#define BS_AUTO3STATE 0x6L
#define BS_GROUPBOX 0x7L
#define BS_USERBUTTON 0x8L
#define BS_AUTORADIOBUTTON 0x9L
#define BS_PUSHBOX 0xAL
#define BS_OWNERDRAW 0xBL
#define BS_TYPEMASK 0xFL
#define BS_LEFTTEXT 0x20L
#define BS_TEXT 0xL
#define BS_ICON 0x40L
#define BS_BITMAP 0x80L
#define BS_LEFT 0x100L
#define BS_RIGHT 0x200L
#define BS_CENTER 0x300L
#define BS_TOP 0x400L
#define BS_BOTTOM 0x800L
#define BS_VCENTER 0xC00L
#define BS_PUSHLIKE 0x1000L
#define BS_MULTILINE 0x2000L
#define BS_NOTIFY 0x4000L
#define BS_FLAT 0x8000L
#define BS_RIGHTBUTTON BS_LEFTTEXT

#define BN_CLICKED 0
#define BN_PAINT 1
#define BN_HILITE 2
#define BN_UNHILITE 3
#define BN_DISABLE 4
#define BN_DOUBLECLICKED 5
#define BN_PUSHED BN_HILITE
#define BN_UNPUSHED BN_UNHILITE
#define BN_DBLCLK BN_DOUBLECLICKED
#define BN_SETFOCUS 6
#define BN_KILLFOCUS 7

#define BM_GETCHECK 0xF0
#define BM_SETCHECK 0xF1
#define BM_GETSTATE 0xF2
#define BM_SETSTATE 0xF3
#define BM_SETSTYLE 0xF4
#define BM_CLICK 0xF5
#define BM_GETIMAGE 0xF6
#define BM_SETIMAGE 0xF7

#define BST_UNCHECKED 0
#define BST_CHECKED 0x1
#define BST_INDETERMINATE 0x2
#define BST_PUSHED 0x4
#define BST_FOCUS 0x8

#define SS_LEFT 0xL
#define SS_CENTER 0x1L
#define SS_RIGHT 0x2L
#define SS_ICON 0x3L
#define SS_BLACKRECT 0x4L
#define SS_GRAYRECT 0x5L
#define SS_WHITERECT 0x6L
#define SS_BLACKFRAME 0x7L
#define SS_GRAYFRAME 0x8L
#define SS_WHITEFRAME 0x9L
#define SS_USERITEM 0xAL
#define SS_SIMPLE 0xBL
#define SS_LEFTNOWORDWRAP 0xCL
#define SS_OWNERDRAW 0xDL
#define SS_BITMAP 0xEL
#define SS_ENHMETAFILE 0xFL
#define SS_ETCHEDHORZ 0x10L
#define SS_ETCHEDVERT 0x11L
#define SS_ETCHEDFRAME 0x12L
#define SS_TYPEMASK 0x1FL
#define SS_REALSIZECONTROL 0x40L
#define SS_NOPREFIX 0x80L
#define SS_NOTIFY 0x100L
#define SS_CENTERIMAGE 0x200L
#define SS_RIGHTJUST 0x400L
#define SS_REALSIZEIMAGE 0x800L
#define SS_SUNKEN 0x1000L
#define SS_EDITCONTROL 0x2000L
#define SS_ENDELLIPSIS 0x4000L
#define SS_PATHELLIPSIS 0x8000L
#define SS_WORDELLIPSIS 0xC000L
#define SS_ELLIPSISMASK 0xC000L

#define DS_ABSALIGN 0x1L
#define DS_SYSMODAL 0x2L
#define DS_LOCALEDIT 0x20L
#define DS_SETFONT 0x40L
#define DS_MODALFRAME 0x80L
#define DS_NOIDLEMSG 0x100L
#define DS_SETFOREGROUND 0x200L

#define DS_3DLOOK 0x4L
#define DS_FIXEDSYS 0x8L
#define DS_NOFAILCREATE 0x10L
#define DS_CONTROL 0x400L
#define DS_CENTER 0x800L
#define DS_CENTERMOUSE 0x1000L
#define DS_CONTEXTHELP 0x2000L

#define DS_SHELLFONT (DS_SETFONT | DS_FIXEDSYS)

#if(_WIN32_WCE >= 0x500)
#define DS_USEPIXELS 0x8000L
#endif

#define LBS_NOTIFY 0x1L
#define LBS_SORT 0x2L
#define LBS_NOREDRAW 0x4L
#define LBS_MULTIPLESEL 0x8L
#define LBS_OWNERDRAWFIXED 0x10L
#define LBS_OWNERDRAWVARIABLE 0x20L
#define LBS_HASSTRINGS 0x40L
#define LBS_USETABSTOPS 0x80L
#define LBS_NOINTEGRALHEIGHT 0x100L
#define LBS_MULTICOLUMN 0x200L
#define LBS_WANTKEYBOARDINPUT 0x400L
#define LBS_EXTENDEDSEL 0x800L
#define LBS_DISABLENOSCROLL 0x1000L
#define LBS_NODATA 0x2000L
#define LBS_NOSEL 0x4000L
#define LBS_COMBOBOX 0x8000L

#define LBS_STANDARD (LBS_NOTIFY | LBS_SORT | WS_VSCROLL | WS_BORDER)

#define CBS_SIMPLE 0x1L
#define CBS_DROPDOWN 0x2L
#define CBS_DROPDOWNLIST 0x3L
#define CBS_OWNERDRAWFIXED 0x10L
#define CBS_OWNERDRAWVARIABLE 0x20L
#define CBS_AUTOHSCROLL 0x40L
#define CBS_OEMCONVERT 0x80L
#define CBS_SORT 0x100L
#define CBS_HASSTRINGS 0x200L
#define CBS_NOINTEGRALHEIGHT 0x400L
#define CBS_DISABLENOSCROLL 0x800L
#define CBS_UPPERCASE 0x2000L
#define CBS_LOWERCASE 0x4000L

#define SBS_HORZ 0xL
#define SBS_VERT 0x1L
#define SBS_TOPALIGN 0x2L
#define SBS_LEFTALIGN 0x2L
#define SBS_BOTTOMALIGN 0x4L
#define SBS_RIGHTALIGN 0x4L
#define SBS_SIZEBOXTOPLEFTALIGN 0x2L
#define SBS_SIZEBOXBOTTOMRIGHTALIGN 0x4L
#define SBS_SIZEBOX 0x8L
#define SBS_SIZEGRIP 0x10L

#define HELP_CONTEXT 0x1L
#define HELP_QUIT 0x2L
#define HELP_INDEX 0x3L
#define HELP_CONTENTS 0x3L
#define HELP_HELPONHELP 0x4L
#define HELP_SETINDEX 0x5L
#define HELP_SETCONTENTS 0x5L
#define HELP_CONTEXTPOPUP 0x8L
#define HELP_FORCEFILE 0x9L
#define HELP_KEY 0x101L
#define HELP_COMMAND 0x102L
#define HELP_PARTIALKEY 0x105L
#define HELP_MULTIKEY 0x201L
#define HELP_SETWINPOS 0x203L
#define HELP_CONTEXTMENU 0xa
#define HELP_FINDER 0xb
#define HELP_WM_HELP 0xc
#define HELP_SETPOPUP_POS 0xd

#define HELP_TCARD 0x8000
#define HELP_TCARD_DATA 0x10
#define HELP_TCARD_OTHER_CALLER 0x11

#define IDH_NO_HELP 28440
#define IDH_MISSING_CONTEXT 28441
#define IDH_GENERIC_HELP_BUTTON 28442
#define IDH_OK 28443
#define IDH_CANCEL 28444
#define IDH_HELP 28445

#endif  /* ndef _WINUSER_ */
