1 /**
2  * @file winuser.h
3  * Copyright 2012, 2013 MinGW.org project
4  *
5  * Permission is hereby granted, free of charge, to any person obtaining a
6  * copy of this software and associated documentation files (the "Software"),
7  * to deal in the Software without restriction, including without limitation
8  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9  * and/or sell copies of the Software, and to permit persons to whom the
10  * Software is furnished to do so, subject to the following conditions:
11  *
12  * The above copyright notice and this permission notice (including the next
13  * paragraph) shall be included in all copies or substantial portions of the
14  * Software.
15  *
16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22  * DEALINGS IN THE SOFTWARE.
23  */
24 #ifndef _WINUSER_H
25 #define _WINUSER_H
26 #pragma GCC system_header
27 #include <_mingw.h>
28 
29 #ifdef __cplusplus
30 extern "C" {
31 #endif
32 
33 #ifndef WINUSERAPI
34 #ifdef __W32API_USE_DLLIMPORT__
35 #define WINUSERAPI DECLSPEC_IMPORT
36 #else
37 #define WINUSERAPI
38 #endif
39 #endif
40 
41 #define MNGO_NOINTERFACE  0x00
42 #define MNGO_NOERROR      0x01
43 #define MNGOF_TOPGAP      0x01
44 #define MNGOF_BOTTOMGAP   0x02
45 
46 #define WC_DIALOG MAKEINTATOM(0x8002)
47 #define FALT	16
48 #define FCONTROL	8
49 #define FNOINVERT	2
50 #define FSHIFT	4
51 #define FVIRTKEY	1
52 #define ATF_TIMEOUTON	1
53 #define ATF_ONOFFFEEDBACK	2
54 #define ATF_AVAILABLE	4 /* May be obsolete. Not in recent MS docs. */
55 #define WH_MIN	(-1)
56 #define WH_MSGFILTER	(-1)
57 #define WH_JOURNALRECORD	0
58 #define WH_JOURNALPLAYBACK	1
59 #define WH_KEYBOARD	2
60 #define WH_GETMESSAGE	3
61 #define WH_CALLWNDPROC	4
62 #define WH_CBT	5
63 #define WH_SYSMSGFILTER	6
64 #define WH_MOUSE	7
65 #define WH_HARDWARE	8
66 #define WH_DEBUG	9
67 #define WH_SHELL	10
68 #define WH_FOREGROUNDIDLE	11
69 #define WH_CALLWNDPROCRET	12
70 #define WH_KEYBOARD_LL	13
71 #define WH_MOUSE_LL	14
72 #define WH_MAX		14
73 #define WH_MINHOOK	WH_MIN
74 #define WH_MAXHOOK	WH_MAX
75 #define HC_ACTION	0
76 #define HC_GETNEXT	1
77 #define HC_SKIP	2
78 #define HC_NOREMOVE	3
79 #define HC_NOREM	3
80 #define HC_SYSMODALON	4
81 #define HC_SYSMODALOFF	5
82 #define HCBT_MOVESIZE	0
83 #define HCBT_MINMAX	1
84 #define HCBT_QS	2
85 #define HCBT_CREATEWND	3
86 #define HCBT_DESTROYWND	4
87 #define HCBT_ACTIVATE	5
88 #define HCBT_CLICKSKIPPED	6
89 #define HCBT_KEYSKIPPED	7
90 #define HCBT_SYSCOMMAND	8
91 #define HCBT_SETFOCUS	9
92 #define CF_TEXT	1
93 #define CF_BITMAP	2
94 #define CF_METAFILEPICT	3
95 #define CF_SYLK	4
96 #define CF_DIF	5
97 #define CF_TIFF	6
98 #define CF_OEMTEXT	7
99 #define CF_DIB	8
100 #define CF_PALETTE	9
101 #define CF_PENDATA	10
102 #define CF_RIFF	11
103 #define CF_WAVE	12
104 #define CF_UNICODETEXT	13
105 #define CF_ENHMETAFILE	14
106 #define CF_HDROP	15
107 #define CF_LOCALE	16
108 #define CF_MAX	17
109 
110 #define CF_OWNERDISPLAY	128
111 #define CF_DSPTEXT	129
112 #define CF_DSPBITMAP	130
113 #define CF_DSPMETAFILEPICT	131
114 #define CF_DSPENHMETAFILE	142
115 #define CF_PRIVATEFIRST	512
116 #define CF_PRIVATELAST	767
117 #define CF_GDIOBJFIRST	768
118 #define CF_GDIOBJLAST	1023
119 #define HKL_NEXT	1
120 #define HKL_PREV	0
121 #define KLF_ACTIVATE	1
122 #define KLF_SUBSTITUTE_OK	2
123 #define KLF_UNLOADPREVIOUS	4
124 #define KLF_REORDER	8
125 #define KLF_REPLACELANG	16
126 #define KLF_NOTELLSHELL	128
127 #define KLF_SETFORPROCESS	256
128 #define KL_NAMELENGTH 9
129 #define MF_ENABLED	0
130 #define MF_GRAYED	1
131 #define MF_DISABLED	2
132 #define MF_BITMAP	4
133 #define MF_CHECKED	8
134 #define MF_MENUBARBREAK 32
135 #define MF_MENUBREAK	64
136 #define MF_OWNERDRAW	256
137 #define MF_POPUP	16
138 #define MF_SEPARATOR	0x800
139 #define MF_STRING	0
140 #define MF_UNCHECKED	0
141 #define MF_DEFAULT	4096
142 #define MF_SYSMENU	0x2000
143 #define MF_HELP	0x4000
144 #define MF_END	128
145 #define MF_RIGHTJUSTIFY	0x4000
146 #define MF_MOUSESELECT	0x8000
147 #define MF_INSERT 0
148 #define MF_CHANGE 128
149 #define MF_APPEND 256
150 #define MF_DELETE 512
151 #define MF_REMOVE 4096
152 #define MF_USECHECKBITMAPS 512
153 #define MF_UNHILITE 0
154 #define MF_HILITE 128
155 
156 /* Also defined in dbt.h */
157 #define BSM_ALLCOMPONENTS	0
158 #define BSM_APPLICATIONS	8
159 #define BSM_ALLDESKTOPS		16
160 #define BSM_INSTALLABLEDRIVERS	4
161 #define BSM_NETDRIVER	2
162 #define BSM_VXDS	1
163 #define BSF_FLUSHDISK 0x00000004
164 #define BSF_FORCEIFHUNG 0x00000020
165 #define BSF_IGNORECURRENTTASK 0x00000002
166 #define BSF_NOHANG 0x00000008
167 #define BSF_NOTIMEOUTIFNOTHUNG 0x00000040
168 #define BSF_POSTMESSAGE 0x00000010
169 #define BSF_QUERY 0x00000001
170 
171 #define BROADCAST_QUERY_DENY	1112363332
172 #define ENUM_CURRENT_SETTINGS	((DWORD)-1)
173 #define ENUM_REGISTRY_SETTINGS	((DWORD)-2)
174 #define CDS_UPDATEREGISTRY	1
175 #define CDS_TEST	2
176 #define CDS_FULLSCREEN	4
177 #define CDS_GLOBAL	8
178 #define CDS_SET_PRIMARY	16
179 #define CDS_RESET	0x40000000
180 #define CDS_SETRECT	0x20000000
181 #define CDS_NORESET	0x10000000
182 #define DISP_CHANGE_SUCCESSFUL	0
183 #define DISP_CHANGE_RESTART	1
184 #define DISP_CHANGE_FAILED	(-1)
185 #define DISP_CHANGE_BADMODE	(-2)
186 #define DISP_CHANGE_NOTUPDATED	(-3)
187 #define DISP_CHANGE_BADFLAGS	(-4)
188 #define DISP_CHANGE_BADPARAM	(-5)
189 #define DISP_CHANGE_BADDUALVIEW	(-6)
190 #define BST_CHECKED	1
191 #define BST_INDETERMINATE	2
192 #define BST_UNCHECKED	0
193 #define BST_FOCUS	8
194 #define BST_PUSHED	4
195 #define MF_BYCOMMAND	0
196 #define MF_BYPOSITION	1024
197 #define MF_UNCHECKED	0
198 #define MF_HILITE	128
199 #define MF_UNHILITE	0
200 #define CWP_ALL 0
201 #define CWP_SKIPINVISIBLE	1
202 #define CWP_SKIPDISABLED	2
203 #define CWP_SKIPTRANSPARENT	4
204 #define IMAGE_BITMAP	0
205 #define IMAGE_ICON	1
206 #define IMAGE_CURSOR	2
207 #define IMAGE_ENHMETAFILE	3
208 #define DF_ALLOWOTHERACCOUNTHOOK	1
209 #define DESKTOP_CREATEMENU	4
210 #define DESKTOP_CREATEWINDOW	2
211 #define DESKTOP_ENUMERATE	64
212 #define DESKTOP_HOOKCONTROL	8
213 #define DESKTOP_JOURNALPLAYBACK	32
214 #define DESKTOP_JOURNALRECORD	16
215 #define DESKTOP_READOBJECTS	1
216 #define DESKTOP_SWITCHDESKTOP	256
217 #define DESKTOP_WRITEOBJECTS	128
218 #define CW_USEDEFAULT	0x80000000
219 #define WS_BORDER	0x800000
220 #define WS_CAPTION	0xc00000
221 #define WS_CHILD	0x40000000
222 #define WS_CHILDWINDOW	0x40000000
223 #define WS_CLIPCHILDREN 0x2000000
224 #define WS_CLIPSIBLINGS 0x4000000
225 #define WS_DISABLED	0x8000000
226 #define WS_DLGFRAME	0x400000
227 #define WS_GROUP	0x20000
228 #define WS_HSCROLL	0x100000
229 #define WS_ICONIC	0x20000000
230 #define WS_MAXIMIZE	0x1000000
231 #define WS_MAXIMIZEBOX	0x10000
232 #define WS_MINIMIZE	0x20000000
233 #define WS_MINIMIZEBOX	0x20000
234 #define WS_OVERLAPPED	0
235 #define WS_OVERLAPPEDWINDOW	0xcf0000
236 #define WS_POPUP	0x80000000
237 #define WS_POPUPWINDOW	0x80880000
238 #define WS_SIZEBOX	0x40000
239 #define WS_SYSMENU	0x80000
240 #define WS_TABSTOP	0x10000
241 #define WS_THICKFRAME	0x40000
242 #define WS_TILED	0
243 #define WS_TILEDWINDOW	0xcf0000
244 #define WS_VISIBLE	0x10000000
245 #define WS_VSCROLL	0x200000
246 #define MDIS_ALLCHILDSTYLES	1
247 #define BS_3STATE	5
248 #define BS_AUTO3STATE	6
249 #define BS_AUTOCHECKBOX	3
250 #define BS_AUTORADIOBUTTON	9
251 #define BS_BITMAP	128
252 #define BS_BOTTOM	0x800
253 #define BS_CENTER	0x300
254 #define BS_CHECKBOX	2
255 #define BS_DEFPUSHBUTTON	1
256 #define BS_GROUPBOX	7
257 #define BS_ICON	64
258 #define BS_LEFT	256
259 #define BS_LEFTTEXT	32
260 #define BS_MULTILINE	0x2000
261 #define BS_NOTIFY	0x4000
262 #define BS_OWNERDRAW	0xb
263 #define BS_PUSHBUTTON	0
264 #define BS_PUSHLIKE	4096
265 #define BS_RADIOBUTTON 4
266 #define BS_RIGHT	512
267 #define BS_RIGHTBUTTON	32
268 #define BS_TEXT	0
269 #define BS_TOP	0x400
270 #define BS_USERBUTTON	8
271 #define BS_VCENTER	0xc00
272 #define BS_FLAT	0x8000
273 #define CBS_AUTOHSCROLL	64
274 #define CBS_DISABLENOSCROLL	0x800
275 #define CBS_DROPDOWN	2
276 #define CBS_DROPDOWNLIST	3
277 #define CBS_HASSTRINGS	512
278 #define CBS_LOWERCASE	0x4000
279 #define CBS_NOINTEGRALHEIGHT	0x400
280 #define CBS_OEMCONVERT	128
281 #define CBS_OWNERDRAWFIXED	16
282 #define CBS_OWNERDRAWVARIABLE	32
283 #define CBS_SIMPLE	1
284 #define CBS_SORT	256
285 #define CBS_UPPERCASE	0x2000
286 #define ES_AUTOHSCROLL	128
287 #define ES_AUTOVSCROLL	64
288 #define ES_CENTER	1
289 #define ES_LEFT	0
290 #define ES_LOWERCASE 16
291 #define ES_MULTILINE 4
292 #define ES_NOHIDESEL 256
293 #define ES_NUMBER 0x2000
294 #define ES_OEMCONVERT 0x400
295 #define ES_PASSWORD 32
296 #define ES_READONLY 0x800
297 #define ES_RIGHT 2
298 #define ES_UPPERCASE 8
299 #define ES_WANTRETURN 4096
300 #define LBS_DISABLENOSCROLL 4096
301 #define LBS_EXTENDEDSEL 0x800
302 #define LBS_HASSTRINGS 64
303 #define LBS_MULTICOLUMN 512
304 #define LBS_MULTIPLESEL 8
305 #define LBS_NODATA	0x2000
306 #define LBS_NOINTEGRALHEIGHT 256
307 #define LBS_NOREDRAW 4
308 #define LBS_NOSEL 0x4000
309 #define LBS_NOTIFY 1
310 #define LBS_OWNERDRAWFIXED 16
311 #define LBS_OWNERDRAWVARIABLE 32
312 #define LBS_SORT 2
313 #define LBS_STANDARD 0xa00003
314 #define LBS_USETABSTOPS 128
315 #define LBS_WANTKEYBOARDINPUT 0x400
316 #define SBS_BOTTOMALIGN 4
317 #define SBS_HORZ 0
318 #define SBS_LEFTALIGN 2
319 #define SBS_RIGHTALIGN 4
320 #define SBS_SIZEBOX 8
321 #define SBS_SIZEBOXBOTTOMRIGHTALIGN 4
322 #define SBS_SIZEBOXTOPLEFTALIGN 2
323 #define SBS_SIZEGRIP 16
324 #define SBS_TOPALIGN 2
325 #define SBS_VERT 1
326 #define SS_BITMAP 14
327 #define SS_BLACKFRAME 7
328 #define SS_BLACKRECT 4
329 #define SS_CENTER 1
330 #define SS_CENTERIMAGE 512
331 #define SS_ENHMETAFILE 15
332 #define SS_ETCHEDFRAME 18
333 #define SS_ETCHEDHORZ 16
334 #define SS_ETCHEDVERT 17
335 #define SS_GRAYFRAME 8
336 #define SS_GRAYRECT 5
337 #define SS_ICON 3
338 #define SS_LEFT 0
339 #define SS_LEFTNOWORDWRAP 0xc
340 #define SS_NOPREFIX 128
341 #define SS_NOTIFY 256
342 #define SS_OWNERDRAW 0xd
343 #define SS_REALSIZEIMAGE 0x800
344 #define SS_RIGHT 2
345 #define SS_RIGHTJUST 0x400
346 #define SS_SIMPLE 11
347 #define SS_SUNKEN 4096
348 #define SS_WHITEFRAME 9
349 #define SS_WHITERECT	6
350 #define SS_USERITEM	10
351 #define SS_TYPEMASK	0x0000001FL
352 #define SS_ENDELLIPSIS	0x00004000L
353 #define SS_PATHELLIPSIS	0x00008000L
354 #define SS_WORDELLIPSIS	0x0000C000L
355 #define SS_ELLIPSISMASK 0x0000C000L
356 #define DS_3DLOOK 4
357 #define DS_ABSALIGN 1
358 #define DS_CENTER 0x800
359 #define DS_CENTERMOUSE 4096
360 #define DS_CONTEXTHELP 0x2000
361 #define DS_CONTROL 0x400
362 #define DS_FIXEDSYS 8
363 #define DS_LOCALEDIT 32
364 #define DS_MODALFRAME 128
365 #define DS_NOFAILCREATE 16
366 #define DS_NOIDLEMSG	256
367 #define DS_SETFONT 64
368 #define DS_SETFOREGROUND 512
369 #define DS_SYSMODAL 2
370 #define DS_SHELLFONT (DS_SETFONT | DS_FIXEDSYS)
371 #define WS_EX_ACCEPTFILES 16
372 #define WS_EX_APPWINDOW	0x40000
373 #define WS_EX_CLIENTEDGE 512
374 #define WS_EX_COMPOSITED 0x2000000 /* XP */
375 #define WS_EX_CONTEXTHELP 0x400
376 #define WS_EX_CONTROLPARENT 0x10000
377 #define WS_EX_DLGMODALFRAME 1
378 #define WS_EX_LAYERED 0x80000   /* w2k */
379 #define WS_EX_LAYOUTRTL 0x400000 /* w98, w2k */
380 #define WS_EX_LEFT	0
381 #define WS_EX_LEFTSCROLLBAR	0x4000
382 #define WS_EX_LTRREADING	0
383 #define WS_EX_MDICHILD	64
384 #define WS_EX_NOACTIVATE 0x8000000 /* w2k */
385 #define WS_EX_NOINHERITLAYOUT 0x100000 /* w2k */
386 #define WS_EX_NOPARENTNOTIFY	4
387 #define WS_EX_OVERLAPPEDWINDOW	0x300
388 #define WS_EX_PALETTEWINDOW	0x188
389 #define WS_EX_RIGHT	0x1000
390 #define WS_EX_RIGHTSCROLLBAR	0
391 #define WS_EX_RTLREADING	0x2000
392 #define WS_EX_STATICEDGE	0x20000
393 #define WS_EX_TOOLWINDOW	128
394 #define WS_EX_TOPMOST	8
395 #define WS_EX_TRANSPARENT	32
396 #define WS_EX_WINDOWEDGE	256
397 #define WINSTA_ALL_ACCESS	895
398 #define WINSTA_ACCESSCLIPBOARD	4
399 #define WINSTA_ACCESSGLOBALATOMS	32
400 #define WINSTA_CREATEDESKTOP	8
401 #define WINSTA_ENUMDESKTOPS	1
402 #define WINSTA_ENUMERATE	256
403 #define WINSTA_EXITWINDOWS	64
404 #define WINSTA_READATTRIBUTES	2
405 #define WINSTA_READSCREEN	512
406 #define WINSTA_WRITEATTRIBUTES	16
407 #define DDL_READWRITE	0
408 #define DDL_READONLY	1
409 #define DDL_HIDDEN	2
410 #define DDL_SYSTEM	4
411 #define DDL_DIRECTORY	16
412 #define DDL_ARCHIVE	32
413 #define DDL_POSTMSGS	8192
414 #define DDL_DRIVES	16384
415 #define DDL_EXCLUSIVE	32768
416 #define DC_ACTIVE	0x00000001
417 #define DC_SMALLCAP	0x00000002
418 #define DC_ICON	0x00000004
419 #define DC_TEXT	0x00000008
420 #define DC_INBUTTON	0x00000010
421 
422 #define DC_CAPTION	(DC_ICON|DC_TEXT|DC_BUTTONS)
423 #define DC_NC	(DC_CAPTION|DC_FRAME)
424 
425 #define BDR_RAISEDOUTER	1
426 #define BDR_SUNKENOUTER	2
427 #define BDR_RAISEDINNER	4
428 #define BDR_SUNKENINNER	8
429 #define BDR_OUTER	3
430 #define BDR_INNER	0xc
431 #define BDR_RAISED	5
432 #define BDR_SUNKEN	10
433 #define EDGE_RAISED	(BDR_RAISEDOUTER|BDR_RAISEDINNER)
434 #define EDGE_SUNKEN	(BDR_SUNKENOUTER|BDR_SUNKENINNER)
435 #define EDGE_ETCHED	(BDR_SUNKENOUTER|BDR_RAISEDINNER)
436 #define EDGE_BUMP	(BDR_RAISEDOUTER|BDR_SUNKENINNER)
437 #define BF_LEFT	1
438 #define BF_TOP	2
439 #define BF_RIGHT	4
440 #define BF_BOTTOM	8
441 #define BF_TOPLEFT	(BF_TOP|BF_LEFT)
442 #define BF_TOPRIGHT	(BF_TOP|BF_RIGHT)
443 #define BF_BOTTOMLEFT	(BF_BOTTOM|BF_LEFT)
444 #define BF_BOTTOMRIGHT	(BF_BOTTOM|BF_RIGHT)
445 #define BF_RECT	(BF_LEFT|BF_TOP|BF_RIGHT|BF_BOTTOM)
446 #define BF_DIAGONAL	16
447 #define BF_DIAGONAL_ENDTOPRIGHT	(BF_DIAGONAL|BF_TOP|BF_RIGHT)
448 #define BF_DIAGONAL_ENDTOPLEFT	(BF_DIAGONAL|BF_TOP|BF_LEFT)
449 #define BF_DIAGONAL_ENDBOTTOMLEFT	(BF_DIAGONAL|BF_BOTTOM|BF_LEFT)
450 #define BF_DIAGONAL_ENDBOTTOMRIGHT	(BF_DIAGONAL|BF_BOTTOM|BF_RIGHT)
451 #define BF_MIDDLE	0x800
452 #define BF_SOFT	0x1000
453 #define BF_ADJUST	0x2000
454 #define BF_FLAT	0x4000
455 #define BF_MONO	0x8000
456 #define DFC_CAPTION	1
457 #define DFC_MENU	2
458 #define DFC_SCROLL	3
459 #define DFC_BUTTON	4
460 
461 #define DFCS_CAPTIONCLOSE	0
462 #define DFCS_CAPTIONMIN	1
463 #define DFCS_CAPTIONMAX	2
464 #define DFCS_CAPTIONRESTORE	3
465 #define DFCS_CAPTIONHELP	4
466 #define DFCS_MENUARROW	0
467 #define DFCS_MENUCHECK	1
468 #define DFCS_MENUBULLET	2
469 #define DFCS_MENUARROWRIGHT	4
470 #define DFCS_SCROLLUP	0
471 #define DFCS_SCROLLDOWN	1
472 #define DFCS_SCROLLLEFT	2
473 #define DFCS_SCROLLRIGHT	3
474 #define DFCS_SCROLLCOMBOBOX	5
475 #define DFCS_SCROLLSIZEGRIP	8
476 #define DFCS_SCROLLSIZEGRIPRIGHT	16
477 #define DFCS_BUTTONCHECK	0
478 #define DFCS_BUTTONRADIOIMAGE	1
479 #define DFCS_BUTTONRADIOMASK	2
480 #define DFCS_BUTTONRADIO	4
481 #define DFCS_BUTTON3STATE	8
482 #define DFCS_BUTTONPUSH	16
483 #define DFCS_INACTIVE	256
484 #define DFCS_PUSHED	512
485 #define DFCS_CHECKED	1024
486 
487 #define DFCS_ADJUSTRECT	0x2000
488 #define DFCS_FLAT	0x4000
489 #define DFCS_MONO	0x8000
490 #define DST_COMPLEX	0
491 #define DST_TEXT	1
492 #define DST_PREFIXTEXT	2
493 #define DST_ICON	3
494 #define DST_BITMAP	4
495 #define DSS_NORMAL	0
496 #define DSS_UNION	16
497 #define DSS_DISABLED	32
498 #define DSS_MONO	128
499 #define DSS_RIGHT	0x8000
500 #define DT_BOTTOM	8
501 #define DT_CALCRECT	1024
502 #define DT_CENTER	1
503 #define DT_EDITCONTROL	8192
504 #define DT_END_ELLIPSIS	32768
505 #define DT_PATH_ELLIPSIS	16384
506 #define DT_WORD_ELLIPSIS 0x40000
507 #define DT_EXPANDTABS	64
508 #define DT_EXTERNALLEADING	512
509 #define DT_LEFT	0
510 #define DT_MODIFYSTRING	65536
511 #define DT_NOCLIP	256
512 #define DT_NOPREFIX	2048
513 #define DT_RIGHT	2
514 #define DT_RTLREADING	131072
515 #define DT_SINGLELINE	32
516 #define DT_TABSTOP	128
517 #define DT_TOP	0
518 #define DT_VCENTER	4
519 #define DT_WORDBREAK	16
520 #define DT_INTERNAL	4096
521 #define WB_ISDELIMITER	2
522 #define WB_LEFT	0
523 #define WB_RIGHT	1
524 #define SB_HORZ	0
525 #define SB_VERT	1
526 #define SB_CTL	2
527 #define SB_BOTH	3
528 #define ESB_DISABLE_BOTH	3
529 #define ESB_DISABLE_DOWN	2
530 #define ESB_DISABLE_LEFT	1
531 #define ESB_DISABLE_LTUP	1
532 #define ESB_DISABLE_RIGHT	2
533 #define ESB_DISABLE_RTDN	2
534 #define ESB_DISABLE_UP	1
535 #define ESB_ENABLE_BOTH	0
536 #define SB_LINEUP	0
537 #define SB_LINEDOWN	1
538 #define SB_LINELEFT	0
539 #define SB_LINERIGHT	1
540 #define SB_PAGEUP	2
541 #define SB_PAGEDOWN	3
542 #define SB_PAGELEFT	2
543 #define SB_PAGERIGHT	3
544 #define SB_THUMBPOSITION	4
545 #define SB_THUMBTRACK	5
546 #define SB_ENDSCROLL	8
547 #define SB_LEFT	6
548 #define SB_RIGHT	7
549 #define SB_BOTTOM	7
550 #define SB_TOP	6
551 #define IS_INTRESOURCE(i) (((ULONG_PTR)(i) >> 16) == 0)
552 #define MAKEINTRESOURCEA(i) (LPSTR)((DWORD)((WORD)(i)))
553 #define MAKEINTRESOURCEW(i) (LPWSTR)((DWORD)((WORD)(i)))
554 # define RT_CURSOR MAKEINTRESOURCE(1)
555 # define RT_FONT MAKEINTRESOURCE(8)
556 #define RT_BITMAP MAKEINTRESOURCE(2)
557 #define RT_ICON MAKEINTRESOURCE(3)
558 #define RT_MENU MAKEINTRESOURCE(4)
559 #define RT_DIALOG MAKEINTRESOURCE(5)
560 #define RT_STRING MAKEINTRESOURCE(6)
561 #define RT_FONTDIR MAKEINTRESOURCE(7)
562 #define RT_ACCELERATOR MAKEINTRESOURCE(9)
563 #define RT_RCDATA MAKEINTRESOURCE(10)
564 #define RT_MESSAGETABLE MAKEINTRESOURCE(11)
565 #define DIFFERENCE 11
566 #define RT_GROUP_CURSOR MAKEINTRESOURCE((DWORD)RT_CURSOR+DIFFERENCE)
567 #define RT_GROUP_ICON MAKEINTRESOURCE((DWORD)RT_ICON+DIFFERENCE)
568 #define RT_VERSION MAKEINTRESOURCE(16)
569 #define RT_DLGINCLUDE MAKEINTRESOURCE(17)
570 #define RT_PLUGPLAY MAKEINTRESOURCE(19)
571 #define RT_VXD MAKEINTRESOURCE(20)
572 #define RT_ANICURSOR MAKEINTRESOURCE(21)
573 #define RT_ANIICON MAKEINTRESOURCE(22)
574 #define RT_HTML MAKEINTRESOURCE(23)
575 
576 #ifndef RC_INVOKED
577 #define RT_MANIFEST MAKEINTRESOURCE(24)
578 #define CREATEPROCESS_MANIFEST_RESOURCE_ID  MAKEINTRESOURCE(1)
579 #define ISOLATIONAWARE_MANIFEST_RESOURCE_ID MAKEINTRESOURCE(2)
580 #define ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID MAKEINTRESOURCE(3)
581 #else
582 
583 #define RT_MANIFEST 24
584 #define CREATEPROCESS_MANIFEST_RESOURCE_ID  1
585 #define ISOLATIONAWARE_MANIFEST_RESOURCE_ID 2
586 #define ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID 3
587 #endif
588 
589 #define EWX_FORCE 4
590 #define EWX_LOGOFF 0
591 #define EWX_POWEROFF 8
592 #define EWX_REBOOT 2
593 #define EWX_SHUTDOWN 1
594 
595 #define CS_BYTEALIGNCLIENT 4096
596 #define CS_BYTEALIGNWINDOW 8192
597 #define CS_KEYCVTWINDOW 4
598 #define CS_NOKEYCVT 256
599 #define CS_CLASSDC 64
600 #define CS_DBLCLKS 8
601 #define CS_GLOBALCLASS 16384
602 #define CS_HREDRAW 2
603 #define CS_NOCLOSE 512
604 #define CS_OWNDC 32
605 #define CS_PARENTDC 128
606 #define CS_SAVEBITS 2048
607 #define CS_VREDRAW 1
608 #define CS_IME 0x10000
609 
610 #define GCW_ATOM (-32)
611 #define GCL_CBCLSEXTRA (-20)
612 #define GCL_CBWNDEXTRA (-18)
613 #define GCL_HBRBACKGROUND (-10)
614 #define GCL_HCURSOR (-12)
615 #define GCL_HICON (-14)
616 #define GCL_HICONSM (-34)
617 #define GCL_HMODULE (-16)
618 #define GCL_MENUNAME (-8)
619 #define GCL_STYLE (-26)
620 #define GCL_WNDPROC (-24)
621 #define GCLP_MENUNAME (-8)
622 #define GCLP_HBRBACKGROUND (-10)
623 #define GCLP_HCURSOR (-12)
624 #define GCLP_HICON (-14)
625 #define GCLP_HMODULE (-16)
626 #define GCLP_WNDPROC (-24)
627 #define GCLP_HICONSM (-34)
628 
629 #if 0
630     /* This is supposed to be defined by the program using it not defined
631        in the w32api headers.  I've left it here for documentation purposes.
632     */
633 #ifndef IDC_STATIC  /* May be predefined by resource compiler. */
634 #define IDC_STATIC (-1)
635 #endif
636 #endif
637 
638 #define IDC_ARROW MAKEINTRESOURCE(32512)
639 #define IDC_IBEAM MAKEINTRESOURCE(32513)
640 #define IDC_WAIT MAKEINTRESOURCE(32514)
641 #define IDC_CROSS MAKEINTRESOURCE(32515)
642 #define IDC_UPARROW MAKEINTRESOURCE(32516)
643 #define IDC_SIZENWSE MAKEINTRESOURCE(32642)
644 #define IDC_SIZENESW MAKEINTRESOURCE(32643)
645 #define IDC_SIZEWE MAKEINTRESOURCE(32644)
646 #define IDC_SIZENS MAKEINTRESOURCE(32645)
647 #define IDC_SIZEALL MAKEINTRESOURCE(32646)
648 #define IDC_NO MAKEINTRESOURCE(32648)
649 #define IDC_HAND MAKEINTRESOURCE(32649)
650 #define IDC_APPSTARTING MAKEINTRESOURCE(32650)
651 #define IDC_HELP MAKEINTRESOURCE(32651)
652 #define IDC_ICON MAKEINTRESOURCE(32641)
653 #define IDC_SIZE MAKEINTRESOURCE(32640)
654 
655 #ifndef RC_INVOKED
656 #define IDI_APPLICATION MAKEINTRESOURCE(32512)
657 #define IDI_HAND MAKEINTRESOURCE(32513)
658 #define IDI_QUESTION MAKEINTRESOURCE(32514)
659 #define IDI_EXCLAMATION MAKEINTRESOURCE(32515)
660 #define IDI_ASTERISK MAKEINTRESOURCE(32516)
661 #define IDI_WINLOGO MAKEINTRESOURCE(32517)
662 #else
663 
664 #define IDI_APPLICATION 32512
665 #define IDI_HAND 32513
666 #define IDI_QUESTION 32514
667 #define IDI_EXCLAMATION 32515
668 #define IDI_ASTERISK 32516
669 #define IDI_WINLOGO 32517
670 #endif
671 
672 #define IDI_WARNING IDI_EXCLAMATION
673 #define IDI_ERROR IDI_HAND
674 #define IDI_INFORMATION IDI_ASTERISK
675 #define MIIM_STATE 1
676 #define MIIM_ID 2
677 #define MIIM_SUBMENU 4
678 #define MIIM_CHECKMARKS 8
679 #define MIIM_TYPE 16
680 #define MIIM_DATA 32
681 #define MIIM_STRING 64
682 #define MIIM_BITMAP 128
683 #define MIIM_FTYPE 256
684 
685 #define MFT_BITMAP 4
686 #define MFT_MENUBARBREAK 32
687 #define MFT_MENUBREAK 64
688 #define MFT_OWNERDRAW 256
689 #define MFT_RADIOCHECK 512
690 #define MFT_RIGHTJUSTIFY 0x4000
691 #define MFT_SEPARATOR 0x800
692 #define MFT_RIGHTORDER 0x2000L
693 #define MFT_STRING 0
694 #define MFS_CHECKED 8
695 #define MFS_DEFAULT 4096
696 #define MFS_DISABLED 3
697 #define MFS_ENABLED 0
698 #define MFS_GRAYED 3
699 #define MFS_HILITE 128
700 #define MFS_UNCHECKED 0
701 #define MFS_UNHILITE 0
702 #define GW_HWNDNEXT 2
703 #define GW_HWNDPREV 3
704 #define GW_CHILD 5
705 #define GW_HWNDFIRST 0
706 #define GW_HWNDLAST 1
707 #define GW_OWNER 4
708 #define SW_HIDE 0
709 #define SW_NORMAL 1
710 #define SW_SHOWNORMAL 1
711 #define SW_SHOWMINIMIZED 2
712 #define SW_MAXIMIZE 3
713 #define SW_SHOWMAXIMIZED 3
714 #define SW_SHOWNOACTIVATE 4
715 #define SW_SHOW 5
716 #define SW_MINIMIZE 6
717 #define SW_SHOWMINNOACTIVE 7
718 #define SW_SHOWNA 8
719 #define SW_RESTORE 9
720 #define SW_SHOWDEFAULT 10
721 #define SW_FORCEMINIMIZE 11
722 #define SW_MAX 11
723 #define MB_USERICON 128
724 #define MB_ICONASTERISK 64
725 #define MB_ICONEXCLAMATION 0x30
726 #define MB_ICONWARNING 0x30
727 #define MB_ICONERROR 16
728 #define MB_ICONHAND 16
729 #define MB_ICONQUESTION 32
730 #define MB_OK 0
731 #define MB_ABORTRETRYIGNORE 2
732 #define MB_APPLMODAL 0
733 #define MB_DEFAULT_DESKTOP_ONLY 0x20000
734 #define MB_HELP 0x4000
735 #define MB_RIGHT 0x80000
736 #define MB_RTLREADING 0x100000
737 #define MB_TOPMOST 0x40000
738 #define MB_DEFBUTTON1 0
739 #define MB_DEFBUTTON2 256
740 #define MB_DEFBUTTON3 512
741 #define MB_DEFBUTTON4 0x300
742 #define MB_ICONINFORMATION 64
743 #define MB_ICONSTOP 16
744 #define MB_OKCANCEL 1
745 #define MB_RETRYCANCEL 5
746 #define MB_SERVICE_NOTIFICATION 0x00200000
747 #define MB_SERVICE_NOTIFICATION_NT3X 0x00040000
748 #define MB_SETFOREGROUND 0x10000
749 #define MB_SYSTEMMODAL 4096
750 #define MB_TASKMODAL 0x2000
751 #define MB_YESNO 4
752 #define MB_YESNOCANCEL 3
753 #define MB_ICONMASK 240
754 #define MB_DEFMASK 3840
755 #define MB_MODEMASK 0x00003000
756 #define MB_MISCMASK 0x0000C000
757 #define MB_NOFOCUS 0x00008000
758 #define MB_TYPEMASK 15
759 #define MB_TOPMOST 0x40000
760 
761 #define IDOK 1
762 #define IDCANCEL 2
763 #define IDABORT 3
764 #define IDRETRY 4
765 #define IDIGNORE 5
766 #define IDYES 6
767 #define IDNO 7
768 #define IDCLOSE 8
769 #define IDHELP 9
770 
771 #define GWL_EXSTYLE (-20)
772 #define GWL_STYLE (-16)
773 #define GWL_WNDPROC (-4)
774 #define GWLP_WNDPROC (-4)
775 #define GWL_HINSTANCE (-6)
776 #define GWLP_HINSTANCE (-6)
777 #define GWL_HWNDPARENT (-8)
778 #define GWLP_HWNDPARENT (-8)
779 #define GWL_ID (-12)
780 #define GWLP_ID (-12)
781 #define GWL_USERDATA (-21)
782 #define GWLP_USERDATA (-21)
783 #define DWL_DLGPROC 4
784 #define DWLP_DLGPROC 4
785 #define DWL_MSGRESULT 0
786 #define DWLP_MSGRESULT 0
787 #define DWL_USER 8
788 #define DWLP_USER 8
789 
790 #define QS_ALLPOSTMESSAGE 256
791 #define QS_HOTKEY 128
792 
793 #define QS_KEY 1
794 #define QS_MOUSE 6
795 #define QS_MOUSEBUTTON 4
796 #define QS_MOUSEMOVE 2
797 #define QS_PAINT 32
798 #define QS_POSTMESSAGE 8
799 
800 #define QS_SENDMESSAGE 64
801 #define QS_TIMER 16
802 #define MWMO_WAITALL 1
803 #define MWMO_ALERTABLE 2
804 #define MWMO_INPUTAVAILABLE 4
805 #define COLOR_3DDKSHADOW 21
806 #define COLOR_3DFACE 15
807 #define COLOR_3DHILIGHT 20
808 #define COLOR_3DHIGHLIGHT 20
809 #define COLOR_3DLIGHT 22
810 #define COLOR_BTNHILIGHT 20
811 #define COLOR_3DSHADOW 16
812 #define COLOR_ACTIVEBORDER 10
813 #define COLOR_ACTIVECAPTION 2
814 #define COLOR_APPWORKSPACE 12
815 #define COLOR_BACKGROUND 1
816 #define COLOR_DESKTOP 1
817 #define COLOR_BTNFACE 15
818 #define COLOR_BTNHIGHLIGHT 20
819 #define COLOR_BTNSHADOW 16
820 #define COLOR_BTNTEXT 18
821 #define COLOR_CAPTIONTEXT 9
822 #define COLOR_GRAYTEXT 17
823 #define COLOR_HIGHLIGHT 13
824 #define COLOR_HIGHLIGHTTEXT 14
825 #define COLOR_INACTIVEBORDER 11
826 #define COLOR_INACTIVECAPTION 3
827 #define COLOR_INACTIVECAPTIONTEXT 19
828 #define COLOR_INFOBK 24
829 #define COLOR_INFOTEXT 23
830 #define COLOR_MENU 4
831 #define COLOR_MENUTEXT 7
832 #define COLOR_SCROLLBAR 0
833 #define COLOR_WINDOW 5
834 #define COLOR_WINDOWFRAME 6
835 #define COLOR_WINDOWTEXT 8
836 #define COLOR_HOTLIGHT 26
837 #define COLOR_GRADIENTACTIVECAPTION 27
838 #define COLOR_GRADIENTINACTIVECAPTION 28
839 #define CTLCOLOR_MSGBOX 0
840 #define CTLCOLOR_EDIT 1
841 #define CTLCOLOR_LISTBOX 2
842 #define CTLCOLOR_BTN 3
843 #define CTLCOLOR_DLG 4
844 #define CTLCOLOR_SCROLLBAR 5
845 #define CTLCOLOR_STATIC 6
846 #define CTLCOLOR_MAX 7
847 #define SM_CXSCREEN 0
848 #define SM_CYSCREEN 1
849 #define SM_CXVSCROLL 2
850 #define SM_CYHSCROLL 3
851 #define SM_CYCAPTION 4
852 #define SM_CXBORDER 5
853 #define SM_CYBORDER 6
854 #define SM_CXDLGFRAME 7
855 #define SM_CXFIXEDFRAME 7
856 #define SM_CYDLGFRAME 8
857 #define SM_CYFIXEDFRAME 8
858 #define SM_CYVTHUMB 9
859 #define SM_CXHTHUMB 10
860 #define SM_CXICON 11
861 #define SM_CYICON 12
862 #define SM_CXCURSOR 13
863 #define SM_CYCURSOR 14
864 #define SM_CYMENU 15
865 #define SM_CXFULLSCREEN 16
866 #define SM_CYFULLSCREEN 17
867 #define SM_CYKANJIWINDOW 18
868 #define SM_MOUSEPRESENT 19
869 #define SM_CYVSCROLL 20
870 #define SM_CXHSCROLL 21
871 #define SM_DEBUG 22
872 #define SM_SWAPBUTTON 23
873 #define SM_RESERVED1 24
874 #define SM_RESERVED2 25
875 #define SM_RESERVED3 26
876 #define SM_RESERVED4 27
877 #define SM_CXMIN 28
878 #define SM_CYMIN 29
879 #define SM_CXSIZE 30
880 #define SM_CYSIZE 31
881 #define SM_CXSIZEFRAME 32
882 #define SM_CXFRAME 32
883 #define SM_CYSIZEFRAME 33
884 #define SM_CYFRAME 33
885 #define SM_CXMINTRACK 34
886 #define SM_CYMINTRACK 35
887 #define SM_CXDOUBLECLK 36
888 #define SM_CYDOUBLECLK 37
889 #define SM_CXICONSPACING 38
890 #define SM_CYICONSPACING 39
891 #define SM_MENUDROPALIGNMENT 40
892 #define SM_PENWINDOWS 41
893 #define SM_DBCSENABLED 42
894 #define SM_CMOUSEBUTTONS 43
895 #define SM_SECURE 44
896 #define SM_CXEDGE 45
897 #define SM_CYEDGE 46
898 #define SM_CXMINSPACING 47
899 #define SM_CYMINSPACING 48
900 #define SM_CXSMICON 49
901 #define SM_CYSMICON 50
902 #define SM_CYSMCAPTION 51
903 #define SM_CXSMSIZE 52
904 #define SM_CYSMSIZE 53
905 #define SM_CXMENUSIZE 54
906 #define SM_CYMENUSIZE 55
907 #define SM_ARRANGE 56
908 #define SM_CXMINIMIZED 57
909 #define SM_CYMINIMIZED 58
910 #define SM_CXMAXTRACK 59
911 #define SM_CYMAXTRACK 60
912 #define SM_CXMAXIMIZED 61
913 #define SM_CYMAXIMIZED 62
914 #define SM_NETWORK 63
915 #define SM_CLEANBOOT 67
916 #define SM_CXDRAG 68
917 #define SM_CYDRAG 69
918 #define SM_SHOWSOUNDS 70
919 #define SM_CXMENUCHECK 71
920 #define SM_CYMENUCHECK 72
921 #define SM_SLOWMACHINE 73
922 #define SM_MIDEASTENABLED 74
923 #define SM_MOUSEWHEELPRESENT 75
924 #define SM_XVIRTUALSCREEN 76
925 #define SM_YVIRTUALSCREEN 77
926 #define SM_CXVIRTUALSCREEN 78
927 #define SM_CYVIRTUALSCREEN 79
928 #define SM_CMONITORS 80
929 #define SM_SAMEDISPLAYFORMAT 81
930 #define SM_IMMENABLED 82
931 #define SM_CXFOCUSBORDER 83
932 #define SM_CYFOCUSBORDER 84
933 #define SM_TABLETPC 86
934 #define SM_MEDIACENTER 87
935 #define SM_STARTER 88
936 #define SM_SERVERR2 89
937 #define SM_CMETRICS 88
938 #define SM_REMOTESESSION 0X1000
939 #define ARW_BOTTOMLEFT 0
940 #define ARW_BOTTOMRIGHT 1
941 #define ARW_HIDE 8
942 #define ARW_TOPLEFT 2
943 #define ARW_TOPRIGHT 3
944 #define ARW_DOWN 4
945 #define ARW_LEFT 0
946 #define ARW_RIGHT 0
947 #define ARW_UP 4
948 #define UOI_FLAGS 1
949 #define UOI_NAME 2
950 #define UOI_TYPE 3
951 #define UOI_USER_SID 4
952 #define LR_DEFAULTCOLOR 0
953 #define LR_MONOCHROME 1
954 #define LR_COLOR 2
955 #define LR_COPYRETURNORG 4
956 #define LR_COPYDELETEORG 8
957 #define LR_LOADFROMFILE 16
958 #define LR_LOADTRANSPARENT 32
959 #define LR_LOADREALSIZE 128
960 #define LR_DEFAULTSIZE 0x0040
961 #define LR_VGACOLOR 0x0080
962 #define LR_LOADMAP3DCOLORS 4096
963 #define LR_CREATEDIBSECTION 8192
964 #define LR_COPYFROMRESOURCE 0x4000
965 #define LR_SHARED 32768
966 #define KEYEVENTF_EXTENDEDKEY 0x00000001
967 #define KEYEVENTF_KEYUP 00000002
968 
969 #define OBM_BTNCORNERS 32758
970 #define OBM_BTSIZE 32761
971 #define OBM_CHECK 32760
972 #define OBM_CHECKBOXES 32759
973 #define OBM_CLOSE 32754
974 #define OBM_COMBO 32738
975 #define OBM_DNARROW 32752
976 #define OBM_DNARROWD 32742
977 #define OBM_DNARROWI 32736
978 #define OBM_LFARROW 32750
979 #define OBM_LFARROWI 32734
980 #define OBM_LFARROWD 32740
981 #define OBM_MNARROW 32739
982 #define OBM_OLD_CLOSE 32767
983 #define OBM_OLD_DNARROW 32764
984 #define OBM_OLD_LFARROW 32762
985 #define OBM_OLD_REDUCE 32757
986 #define OBM_OLD_RESTORE 32755
987 #define OBM_OLD_RGARROW 32763
988 #define OBM_OLD_UPARROW 32765
989 #define OBM_OLD_ZOOM 32756
990 #define OBM_REDUCE 32749
991 #define OBM_REDUCED 32746
992 #define OBM_RESTORE 32747
993 #define OBM_RESTORED 32744
994 #define OBM_RGARROW 32751
995 #define OBM_RGARROWD 32741
996 #define OBM_RGARROWI 32735
997 #define OBM_SIZE 32766
998 #define OBM_UPARROW 32753
999 #define OBM_UPARROWD 32743
1000 #define OBM_UPARROWI 32737
1001 #define OBM_ZOOM 32748
1002 #define OBM_ZOOMD 32745
1003 #define OCR_NORMAL 32512
1004 #define OCR_IBEAM 32513
1005 #define OCR_WAIT 32514
1006 #define OCR_CROSS 32515
1007 #define OCR_UP 32516
1008 #define OCR_SIZE 32640
1009 #define OCR_ICON 32641
1010 #define OCR_SIZENWSE 32642
1011 #define OCR_SIZENESW 32643
1012 #define OCR_SIZEWE 32644
1013 #define OCR_SIZENS 32645
1014 #define OCR_SIZEALL 32646
1015 #define OCR_NO 32648
1016 #define OCR_APPSTARTING 32650
1017 #define OIC_SAMPLE 32512
1018 #define OIC_HAND 32513
1019 #define OIC_QUES 32514
1020 #define OIC_BANG 32515
1021 #define OIC_NOTE 32516
1022 #define OIC_WINLOGO 32517
1023 #define OIC_WARNING OIC_BANG
1024 #define OIC_ERROR OIC_HAND
1025 #define OIC_INFORMATION OIC_NOTE
1026 #define HELPINFO_MENUITEM 2
1027 #define HELPINFO_WINDOW 1
1028 #define MSGF_DIALOGBOX 0
1029 #define MSGF_MESSAGEBOX 1
1030 #define MSGF_MENU 2
1031 #define MSGF_MOVE 3
1032 #define MSGF_SIZE 4
1033 #define MSGF_SCROLLBAR 5
1034 #define MSGF_NEXTWINDOW 6
1035 #define MSGF_MAINLOOP 8
1036 #define MSGF_USER 4096
1037 #define MOUSEEVENTF_MOVE 0x00000001
1038 #define MOUSEEVENTF_LEFTDOWN 0x00000002
1039 #define MOUSEEVENTF_LEFTUP 0x00000004
1040 #define MOUSEEVENTF_RIGHTDOWN 0x00000008
1041 #define MOUSEEVENTF_RIGHTUP 0x00000010
1042 #define MOUSEEVENTF_MIDDLEDOWN 0x00000020
1043 #define MOUSEEVENTF_MIDDLEUP 0x00000040
1044 #define MOUSEEVENTF_ABSOLUTE 0x00008000
1045 #define MOUSEEVENTF_WHEEL 0x00000800
1046 
1047 /* Also in pbt.h */
1048 #define PBT_APMQUERYSUSPEND 0
1049 #define PBT_APMQUERYSTANDBY 1
1050 #define PBT_APMQUERYSUSPENDFAILED 2
1051 #define PBT_APMQUERYSTANDBYFAILED 3
1052 #define PBT_APMSUSPEND 4
1053 #define PBT_APMSTANDBY 5
1054 #define PBT_APMRESUMECRITICAL 6
1055 #define PBT_APMRESUMESUSPEND 7
1056 #define PBT_APMRESUMESTANDBY 8
1057 #define PBT_APMBATTERYLOW 9
1058 #define PBT_APMPOWERSTATUSCHANGE 10
1059 #define PBT_APMOEMEVENT 11
1060 #define PBT_APMRESUMEAUTOMATIC 18
1061 #define PBTF_APMRESUMEFROMFAILURE 1
1062 
1063 /* end pbt.h */
1064 
1065 #define PM_NOREMOVE 0
1066 #define PM_REMOVE 1
1067 #define PM_NOYIELD 2
1068 
1069 #define HWND_BROADCAST ((HWND)0xFFFF)
1070 #define HWND_BOTTOM ((HWND)1)
1071 #define HWND_NOTOPMOST ((HWND)(-2))
1072 #define HWND_TOP ((HWND)0)
1073 #define HWND_TOPMOST ((HWND)(-1))
1074 #define HWND_DESKTOP (HWND)0
1075 
1076 #define RDW_ERASE 4
1077 #define RDW_FRAME 1024
1078 #define RDW_INTERNALPAINT 2
1079 #define RDW_INVALIDATE 1
1080 #define RDW_NOERASE 32
1081 #define RDW_NOFRAME 2048
1082 #define RDW_NOINTERNALPAINT 16
1083 #define RDW_VALIDATE 8
1084 #define RDW_ERASENOW 512
1085 #define RDW_UPDATENOW 256
1086 #define RDW_ALLCHILDREN 128
1087 #define RDW_NOCHILDREN 64
1088 #define SMTO_ABORTIFHUNG 0x0002
1089 #define SMTO_BLOCK 0x0001
1090 #define SMTO_NORMAL 0x0000
1091 
1092 #define SIF_DISABLENOSCROLL 0x0008
1093 #define SIF_PAGE 0x0002
1094 #define SIF_POS 0x0004
1095 #define SIF_RANGE 0x0001
1096 #define SIF_TRACKPOS 0x0010
1097 #define SIF_ALL (SIF_PAGE|SIF_POS|SIF_RANGE|SIF_TRACKPOS)
1098 #define SWP_DRAWFRAME 0x0020
1099 #define SWP_FRAMECHANGED 0x0020
1100 #define SWP_HIDEWINDOW 0x0080
1101 #define SWP_NOACTIVATE 0x0010
1102 #define SWP_NOCOPYBITS 0x0100
1103 #define SWP_NOMOVE 0x0002
1104 #define SWP_NOSIZE 0x0001
1105 #define SWP_NOREDRAW 0x0008
1106 #define SWP_NOZORDER 0x0004
1107 #define SWP_SHOWWINDOW 0x0040
1108 #define SWP_NOOWNERZORDER 0x0200
1109 #define SWP_NOREPOSITION SWP_NOOWNERZORDER
1110 #define SWP_NOSENDCHANGING 0x0400
1111 #define SWP_DEFERERASE 0x2000
1112 #define SWP_ASYNCWINDOWPOS 0x4000
1113 #define HSHELL_ACTIVATESHELLWINDOW 3
1114 #define HSHELL_ENDTASK 10
1115 #define HSHELL_GETMINRECT 5
1116 #define HSHELL_LANGUAGE 8
1117 #define HSHELL_REDRAW 6
1118 #define HSHELL_TASKMAN 7
1119 #define HSHELL_WINDOWACTIVATED 4
1120 #define HSHELL_WINDOWCREATED 1
1121 #define HSHELL_WINDOWDESTROYED 2
1122 
1123 #define SPI_GETACCESSTIMEOUT 0x003C
1124 #define SPI_GETACTIVEWINDOWTRACKING 0x1000
1125 #define SPI_GETACTIVEWNDTRKTIMEOUT 8194
1126 #define SPI_GETACTIVEWNDTRKZORDER 0x100C
1127 #define SPI_GETANIMATION 0x0048
1128 #define SPI_GETBEEP 0x0001
1129 #define SPI_GETBLOCKSENDINPUTRESETS 0x1026
1130 #define SPI_GETBORDER 0x0005
1131 #define SPI_GETCARETWIDTH 0x2006
1132 #define SPI_GETCOMBOBOXANIMATION 0x1004
1133 #define SPI_GETCURSORSHADOW 0x101A
1134 #define SPI_GETDEFAULTINPUTLANG 0x0059
1135 #define SPI_GETDESKWALLPAPER 0x0073
1136 #define SPI_GETDRAGFULLWINDOWS 0x0026
1137 #define SPI_GETFASTTASKSWITCH 0x0023
1138 #define SPI_GETFILTERKEYS 0x0032
1139 #define SPI_GETFONTSMOOTHING 0x004A
1140 #define SPI_GETFOREGROUNDFLASHCOUNT 0x2004
1141 #define SPI_GETFOREGROUNDLOCKTIMEOUT 0x2000
1142 #define SPI_GETGRADIENTCAPTIONS 0x1008
1143 #define SPI_GETGRIDGRANULARITY 0x0012
1144 #define SPI_GETHIGHCONTRAST 0x0042
1145 #define SPI_GETHOTTRACKING 0x100E
1146 #define SPI_GETICONMETRICS 0x002D
1147 #define SPI_GETICONTITLELOGFONT 0x001F
1148 #define SPI_GETICONTITLEWRAP 0x0019
1149 #define SPI_GETKEYBOARDCUES 0x100A
1150 #define SPI_GETKEYBOARDDELAY 0x0016
1151 #define SPI_GETKEYBOARDPREF 0x0044
1152 #define SPI_GETKEYBOARDSPEED 0x000A
1153 #define SPI_GETLISTBOXSMOOTHSCROLLING 0x1006
1154 #define SPI_GETLOWPOWERACTIVE 0x0053
1155 #define SPI_GETLOWPOWERTIMEOUT 0x004F
1156 #define SPI_GETMENUANIMATION 0x1002
1157 #define SPI_GETMENUDROPALIGNMENT 0x001B
1158 #define SPI_GETMENUFADE 0x1012
1159 #define SPI_GETMENUSHOWDELAY 0x006A
1160 #define SPI_GETMENUUNDERLINES SPI_GETKEYBOARDCUES
1161 #define SPI_GETMINIMIZEDMETRICS 0x002B
1162 #define SPI_GETMOUSE 0x0003
1163 #define SPI_GETMOUSEHOVERHEIGHT 0x0064
1164 #define SPI_GETMOUSEHOVERTIME 0x0066
1165 #define SPI_GETMOUSEHOVERWIDTH 0x0062
1166 #define SPI_GETMOUSEKEYS 0x0036
1167 #define SPI_GETMOUSESPEED 0x0070
1168 #define SPI_GETMOUSETRAILS 0x005E
1169 #define SPI_GETNONCLIENTMETRICS 0x0029
1170 #define SPI_GETPOWEROFFACTIVE 0x0054
1171 #define SPI_GETPOWEROFFTIMEOUT 0x0050
1172 #define SPI_GETSCREENREADER 0x0046
1173 #define SPI_GETSCREENSAVEACTIVE 0x0010
1174 #define SPI_GETSCREENSAVERRUNNING 0x0072
1175 #define SPI_GETSCREENSAVETIMEOUT 0x000E
1176 #define SPI_GETSELECTIONFADE 0x1014
1177 #define SPI_GETSERIALKEYS 0x003E
1178 #define SPI_GETSHOWIMEUI 0x006E
1179 #define SPI_GETSHOWSOUNDS 0x0038
1180 #define SPI_GETSNAPTODEFBUTTON 0x005F
1181 #define SPI_GETSOUNDSENTRY 0x0040
1182 #define SPI_GETSTICKYKEYS 0x003A
1183 #define SPI_GETTOGGLEKEYS 0x0034
1184 #define SPI_GETTOOLTIPANIMATION 0x1016
1185 #define SPI_GETTOOLTIPFADE 0x1018
1186 #define SPI_GETUIEFFECTS 0x103E
1187 #define SPI_GETWHEELSCROLLLINES 0x0068
1188 #define SPI_GETWINDOWSEXTENSION 0x005C
1189 #define SPI_GETWORKAREA 0x0030
1190 #define SPI_ICONHORIZONTALSPACING 0x000D
1191 #define SPI_ICONVERTICALSPACING 0x0018
1192 #define SPI_LANGDRIVER 0x000C
1193 #define SPI_SETACCESSTIMEOUT 0x003D
1194 #define SPI_SETACTIVEWINDOWTRACKING 0x1001
1195 #define SPI_SETACTIVEWNDTRKTIMEOUT 8195
1196 #define SPI_SETACTIVEWNDTRKZORDER 0x100D
1197 #define SPI_SETANIMATION 0x0049
1198 #define SPI_SETBEEP 0x0002
1199 #define SPI_SETBLOCKSENDINPUTRESETS 0x1027
1200 #define SPI_SETBORDER 0x0006
1201 #define SPI_SETCARETWIDTH 0x2007
1202 #define SPI_SETCOMBOBOXANIMATION 0x1005
1203 #define SPI_SETCURSORS 0x0057
1204 #define SPI_SETCURSORSHADOW 0x101B
1205 #define SPI_SETDEFAULTINPUTLANG 0x005A
1206 #define SPI_SETDESKPATTERN 0x0015
1207 #define SPI_SETDESKWALLPAPER 0x0014
1208 #define SPI_SETDOUBLECLICKTIME 0x0020
1209 #define SPI_SETDOUBLECLKHEIGHT 0x001E
1210 #define SPI_SETDOUBLECLKWIDTH 0x001D
1211 #define SPI_SETDRAGFULLWINDOWS 0x0025
1212 #define SPI_SETDRAGHEIGHT 0x004D
1213 #define SPI_SETDRAGWIDTH 0x004C
1214 #define SPI_SETFASTTASKSWITCH 0x0024
1215 #define SPI_SETFILTERKEYS 0x0033
1216 #define SPI_SETFONTSMOOTHING 0x004B
1217 #define SPI_SETFOREGROUNDFLASHCOUNT 0x2005
1218 #define SPI_SETFOREGROUNDLOCKTIMEOUT 0x2001
1219 #define SPI_SETGRADIENTCAPTIONS 0x1009
1220 #define SPI_SETGRIDGRANULARITY 0x0013
1221 #define SPI_SETHANDHELD 0x004E
1222 #define SPI_SETHIGHCONTRAST 0x0043
1223 #define SPI_SETHOTTRACKING 0x100F
1224 #define SPI_SETICONMETRICS 0x002E
1225 #define SPI_SETICONS 0x0058
1226 #define SPI_SETICONTITLELOGFONT 0x0022
1227 #define SPI_SETICONTITLEWRAP 0x001A
1228 #define SPI_SETKEYBOARDCUES 0x100B
1229 #define SPI_SETKEYBOARDDELAY 0x0017
1230 #define SPI_SETKEYBOARDPREF 0x0045
1231 #define SPI_SETKEYBOARDSPEED 0x000B
1232 #define SPI_SETLANGTOGGLE 0x005B
1233 #define SPI_SETLISTBOXSMOOTHSCROLLING 0x1007
1234 #define SPI_SETLOWPOWERACTIVE 0x0055
1235 #define SPI_SETLOWPOWERTIMEOUT 0x0051
1236 #define SPI_SETMENUANIMATION 0x1003
1237 #define SPI_SETMENUDROPALIGNMENT 0x001C
1238 #define SPI_SETMENUFADE 0x1013
1239 #define SPI_SETMENUSHOWDELAY 0x006B
1240 #define SPI_SETMENUUNDERLINES SPI_SETKEYBOARDCUES
1241 #define SPI_SETMINIMIZEDMETRICS 0x002C
1242 #define SPI_SETMOUSE 0x0004
1243 #define SPI_SETMOUSEBUTTONSWAP 0x0021
1244 #define SPI_SETMOUSEHOVERHEIGHT 0x0065
1245 #define SPI_SETMOUSEHOVERTIME 0x0067
1246 #define SPI_SETMOUSEHOVERWIDTH 0x0063
1247 #define SPI_SETMOUSEKEYS 0x0037
1248 #define SPI_SETMOUSESPEED 0x0071
1249 #define SPI_SETMOUSETRAILS 0x005D
1250 #define SPI_SETNONCLIENTMETRICS 0x002A
1251 #define SPI_SETPENWINDOWS 0x0031
1252 #define SPI_SETPOWEROFFACTIVE 0x0056
1253 #define SPI_SETPOWEROFFTIMEOUT 0x0052
1254 #define SPI_SETSCREENREADER 0x0047
1255 #define SPI_SETSCREENSAVEACTIVE 0x0011
1256 #define SPI_SETSCREENSAVERRUNNING 0x0061
1257 #define SPI_SETSCREENSAVETIMEOUT 0x000F
1258 #define SPI_SETSELECTIONFADE 0x1015
1259 #define SPI_SETSERIALKEYS 0x003F
1260 #define SPI_SETSHOWIMEUI 0x006F
1261 #define SPI_SETSHOWSOUNDS 0x0039
1262 #define SPI_SETSNAPTODEFBUTTON 0x0060
1263 #define SPI_SETSOUNDSENTRY 0x0041
1264 #define SPI_SETSTICKYKEYS 0x003B
1265 #define SPI_SETTOGGLEKEYS 0x0035
1266 #define SPI_SETTOOLTIPANIMATION 0x1017
1267 #define SPI_SETTOOLTIPFADE 0x1019
1268 #define SPI_SETUIEFFECTS 0x103F
1269 #define SPI_SETWHEELSCROLLLINES 0x0069
1270 #define SPI_SETWORKAREA 0x002F
1271 
1272 #define SPIF_UPDATEINIFILE 0x0001
1273 #define SPIF_SENDCHANGE 0x0002
1274 #define SPIF_SENDWININICHANGE SPIF_SENDCHANGE
1275 #define ATF_ONOFFFEEDBACK 2
1276 #define ATF_TIMEOUTON 1
1277 #define WM_APP 32768
1278 #define WM_ACTIVATE 6
1279 #define WM_ACTIVATEAPP 28
1280 /* FIXME/CHECK: Are WM_AFX{FIRST,LAST} valid for WINVER < 0x400? */
1281 #define WM_AFXFIRST 864
1282 #define WM_AFXLAST 895
1283 #define WM_ASKCBFORMATNAME 780
1284 #define WM_CANCELJOURNAL 75
1285 #define WM_CANCELMODE 31
1286 #define WM_CAPTURECHANGED 533
1287 #define WM_CHANGECBCHAIN 781
1288 #define WM_CHAR 258
1289 #define WM_CHARTOITEM 47
1290 #define WM_CHILDACTIVATE 34
1291 #define WM_CLEAR 771
1292 #define WM_CLOSE 16
1293 #define WM_COMMAND 273
1294 #define WM_COMMNOTIFY 68		/* obsolete */
1295 #define WM_COMPACTING 65
1296 #define WM_COMPAREITEM 57
1297 #define WM_CONTEXTMENU 123
1298 #define WM_COPY 769
1299 #define WM_COPYDATA 74
1300 #define WM_CREATE 1
1301 #define WM_CTLCOLORBTN 309
1302 #define WM_CTLCOLORDLG 310
1303 #define WM_CTLCOLOREDIT 307
1304 #define WM_CTLCOLORLISTBOX 308
1305 #define WM_CTLCOLORMSGBOX 306
1306 #define WM_CTLCOLORSCROLLBAR 311
1307 #define WM_CTLCOLORSTATIC 312
1308 #define WM_CUT 768
1309 #define WM_DEADCHAR 259
1310 #define WM_DELETEITEM 45
1311 #define WM_DESTROY 2
1312 #define WM_DESTROYCLIPBOARD 775
1313 #define WM_DEVICECHANGE 537
1314 #define WM_DEVMODECHANGE 27
1315 #define WM_DISPLAYCHANGE 126
1316 #define WM_DRAWCLIPBOARD 776
1317 #define WM_DRAWITEM 43
1318 #define WM_DROPFILES 563
1319 #define WM_ENABLE 10
1320 #define WM_ENDSESSION 22
1321 #define WM_ENTERIDLE 289
1322 #define WM_ENTERMENULOOP 529
1323 #define WM_ENTERSIZEMOVE 561
1324 #define WM_ERASEBKGND 20
1325 #define WM_EXITMENULOOP 530
1326 #define WM_EXITSIZEMOVE 562
1327 #define WM_FONTCHANGE 29
1328 #define WM_GETDLGCODE 135
1329 #define WM_GETFONT 49
1330 #define WM_GETHOTKEY 51
1331 #define WM_GETICON 127
1332 #define WM_GETMINMAXINFO 36
1333 #define WM_GETTEXT 13
1334 #define WM_GETTEXTLENGTH 14
1335 /* FIXME/CHECK: Are WM_HANDHEL{FIRST,LAST} valid for WINVER < 0x400? */
1336 #define WM_HANDHELDFIRST 856
1337 #define WM_HANDHELDLAST 863
1338 #define WM_HELP 83
1339 #define WM_HOTKEY 786
1340 #define WM_HSCROLL 276
1341 #define WM_HSCROLLCLIPBOARD 782
1342 #define WM_ICONERASEBKGND 39
1343 #define WM_INITDIALOG 272
1344 #define WM_INITMENU 278
1345 #define WM_INITMENUPOPUP 279
1346 
1347 #define WM_INPUTLANGCHANGE 81
1348 #define WM_INPUTLANGCHANGEREQUEST 80
1349 #define WM_KEYDOWN 256
1350 #define WM_KEYUP 257
1351 #define WM_KILLFOCUS 8
1352 #define WM_MDIACTIVATE 546
1353 #define WM_MDICASCADE 551
1354 #define WM_MDICREATE 544
1355 #define WM_MDIDESTROY 545
1356 #define WM_MDIGETACTIVE 553
1357 #define WM_MDIICONARRANGE 552
1358 #define WM_MDIMAXIMIZE 549
1359 #define WM_MDINEXT 548
1360 #define WM_MDIREFRESHMENU 564
1361 #define WM_MDIRESTORE 547
1362 #define WM_MDISETMENU 560
1363 #define WM_MDITILE 550
1364 #define WM_MEASUREITEM 44
1365 
1366 #define WM_MENUCHAR 288
1367 #define WM_MENUSELECT 287
1368 #define WM_NEXTMENU 531
1369 #define WM_MOVE 3
1370 #define WM_MOVING 534
1371 #define WM_NCACTIVATE 134
1372 #define WM_NCCALCSIZE 131
1373 #define WM_NCCREATE 129
1374 #define WM_NCDESTROY 130
1375 #define WM_NCHITTEST 132
1376 #define WM_NCLBUTTONDBLCLK 163
1377 #define WM_NCLBUTTONDOWN 161
1378 #define WM_NCLBUTTONUP 162
1379 #define WM_NCMBUTTONDBLCLK 169
1380 #define WM_NCMBUTTONDOWN 167
1381 #define WM_NCMBUTTONUP 168
1382 
1383 #define WM_NCMOUSEMOVE 160
1384 #define WM_NCPAINT 133
1385 #define WM_NCRBUTTONDBLCLK 166
1386 #define WM_NCRBUTTONDOWN 164
1387 #define WM_NCRBUTTONUP 165
1388 #define WM_NEXTDLGCTL 40
1389 #define WM_NEXTMENU 531
1390 #define WM_NOTIFY 78
1391 #define WM_NOTIFYFORMAT 85
1392 #define WM_NULL 0
1393 #define WM_PAINT 15
1394 #define WM_PAINTCLIPBOARD 777
1395 #define WM_PAINTICON 38
1396 #define WM_PALETTECHANGED 785
1397 #define WM_PALETTEISCHANGING 784
1398 #define WM_PARENTNOTIFY 528
1399 #define WM_PASTE 770
1400 #define WM_PENWINFIRST 896
1401 #define WM_PENWINLAST 911
1402 #define WM_POWER 72
1403 #define WM_POWERBROADCAST 536
1404 #define WM_PRINT 791
1405 #define WM_PRINTCLIENT 792
1406 #define WM_QUERYDRAGICON 55
1407 #define WM_QUERYENDSESSION 17
1408 #define WM_QUERYNEWPALETTE 783
1409 #define WM_QUERYOPEN 19
1410 #define WM_QUEUESYNC 35
1411 #define WM_QUIT 18
1412 #define WM_RENDERALLFORMATS 774
1413 #define WM_RENDERFORMAT 773
1414 #define WM_SETCURSOR 32
1415 #define WM_SETFOCUS 7
1416 #define WM_SETFONT 48
1417 #define WM_SETHOTKEY 50
1418 #define WM_SETICON 128
1419 #define WM_SETREDRAW 11
1420 #define WM_SETTEXT 12
1421 #define WM_SETTINGCHANGE 26
1422 #define WM_SHOWWINDOW 24
1423 #define WM_SIZE 5
1424 #define WM_SIZECLIPBOARD 779
1425 #define WM_SIZING 532
1426 #define WM_SPOOLERSTATUS 42
1427 #define WM_STYLECHANGED 125
1428 #define WM_STYLECHANGING 124
1429 #define WM_SYSCHAR 262
1430 #define WM_SYSCOLORCHANGE 21
1431 #define WM_SYSCOMMAND 274
1432 #define WM_SYSDEADCHAR 263
1433 #define WM_SYSKEYDOWN 260
1434 #define WM_SYSKEYUP 261
1435 #define WM_TCARD 82
1436 #define WM_THEMECHANGED 794
1437 #define WM_TIMECHANGE 30
1438 #define WM_TIMER 275
1439 #define WM_UNDO 772
1440 #define WM_USER 1024
1441 #define WM_USERCHANGED 84
1442 #define WM_VKEYTOITEM 46
1443 #define WM_VSCROLL 277
1444 #define WM_VSCROLLCLIPBOARD 778
1445 #define WM_WINDOWPOSCHANGED 71
1446 #define WM_WINDOWPOSCHANGING 70
1447 #define WM_WININICHANGE 26
1448 #define WM_KEYFIRST 256
1449 #define WM_KEYLAST 264
1450 
1451 #define WM_SYNCPAINT  136
1452 #define WM_MOUSEACTIVATE 33
1453 #define WM_MOUSEMOVE 512
1454 #define WM_LBUTTONDOWN 513
1455 #define WM_LBUTTONUP 514
1456 #define WM_LBUTTONDBLCLK 515
1457 #define WM_RBUTTONDOWN 516
1458 #define WM_RBUTTONUP 517
1459 #define WM_RBUTTONDBLCLK 518
1460 #define WM_MBUTTONDOWN 519
1461 #define WM_MBUTTONUP 520
1462 #define WM_MBUTTONDBLCLK 521
1463 #define WM_MOUSEWHEEL 522
1464 #define WM_MOUSEFIRST 512
1465 #define WM_MOUSELAST 522
1466 
1467 #define WM_MOUSEHOVER	0x2A1
1468 #define WM_MOUSELEAVE	0x2A3
1469 #define WHEEL_DELTA 120
1470 #define GET_WHEEL_DELTA_WPARAM(wparam) ((short)HIWORD (wparam))
1471 #define WHEEL_PAGESCROLL UINT_MAX
1472 
1473 #define BM_CLICK 245
1474 #define BM_GETCHECK 240
1475 #define BM_GETIMAGE 246
1476 #define BM_GETSTATE 242
1477 #define BM_SETCHECK 241
1478 #define BM_SETIMAGE 247
1479 #define BM_SETSTATE 243
1480 #define BM_SETSTYLE 244
1481 #define BN_CLICKED 0
1482 #define BN_DBLCLK 5
1483 #define BN_DISABLE 4
1484 #define BN_DOUBLECLICKED 5
1485 #define BN_HILITE 2
1486 #define BN_KILLFOCUS 7
1487 #define BN_PAINT 1
1488 #define BN_PUSHED 2
1489 #define BN_SETFOCUS 6
1490 #define BN_UNHILITE 3
1491 #define BN_UNPUSHED 3
1492 #define CB_ADDSTRING 323
1493 #define CB_DELETESTRING 324
1494 #define CB_DIR 325
1495 #define CB_FINDSTRING 332
1496 #define CB_FINDSTRINGEXACT 344
1497 #define CB_GETCOUNT 326
1498 #define CB_GETCURSEL 327
1499 #define CB_GETDROPPEDCONTROLRECT 338
1500 #define CB_GETDROPPEDSTATE 343
1501 #define CB_GETDROPPEDWIDTH 351
1502 #define CB_GETEDITSEL 320
1503 #define CB_GETEXTENDEDUI 342
1504 #define CB_GETHORIZONTALEXTENT 349
1505 #define CB_GETITEMDATA 336
1506 #define CB_GETITEMHEIGHT 340
1507 #define CB_GETLBTEXT 328
1508 #define CB_GETLBTEXTLEN 329
1509 #define CB_GETLOCALE 346
1510 #define CB_GETTOPINDEX 347
1511 #define CB_INITSTORAGE 353
1512 #define CB_INSERTSTRING 330
1513 #define CB_LIMITTEXT 321
1514 #define CB_RESETCONTENT 331
1515 #define CB_SELECTSTRING 333
1516 #define CB_SETCURSEL 334
1517 #define CB_SETDROPPEDWIDTH 352
1518 #define CB_SETEDITSEL 322
1519 #define CB_SETEXTENDEDUI 341
1520 #define CB_SETHORIZONTALEXTENT 350
1521 #define CB_SETITEMDATA 337
1522 #define CB_SETITEMHEIGHT 339
1523 #define CB_SETLOCALE 345
1524 #define CB_SETTOPINDEX 348
1525 #define CB_SHOWDROPDOWN 335
1526 
1527 #define CBN_CLOSEUP 8
1528 #define CBN_DBLCLK 2
1529 #define CBN_DROPDOWN 7
1530 #define CBN_EDITCHANGE 5
1531 #define CBN_EDITUPDATE 6
1532 #define CBN_ERRSPACE (-1)
1533 #define CBN_KILLFOCUS 4
1534 #define CBN_SELCHANGE 1
1535 #define CBN_SELENDCANCEL 10
1536 #define CBN_SELENDOK 9
1537 #define CBN_SETFOCUS 3
1538 #define EM_CANUNDO 198
1539 #define EM_CHARFROMPOS 215
1540 #define EM_EMPTYUNDOBUFFER 205
1541 #define EM_FMTLINES 200
1542 #define EM_GETFIRSTVISIBLELINE 206
1543 #define EM_GETHANDLE 189
1544 #define EM_GETLIMITTEXT 213
1545 #define EM_GETLINE 196
1546 #define EM_GETLINECOUNT 186
1547 #define EM_GETMARGINS 212
1548 #define EM_GETMODIFY 184
1549 #define EM_GETPASSWORDCHAR 210
1550 #define EM_GETRECT 178
1551 #define EM_GETSEL 176
1552 #define EM_GETTHUMB 190
1553 #define EM_GETWORDBREAKPROC 209
1554 #define EM_LIMITTEXT 197
1555 #define EM_LINEFROMCHAR 201
1556 #define EM_LINEINDEX 187
1557 #define EM_LINELENGTH 193
1558 #define EM_LINESCROLL 182
1559 #define EM_POSFROMCHAR 214
1560 #define EM_REPLACESEL 194
1561 #define EM_SCROLL 181
1562 #define EM_SCROLLCARET 183
1563 #define EM_SETHANDLE 188
1564 #define EM_SETLIMITTEXT 197
1565 #define EM_SETMARGINS 211
1566 #define EM_SETMODIFY 185
1567 #define EM_SETPASSWORDCHAR 204
1568 #define EM_SETREADONLY 207
1569 #define EM_SETRECT 179
1570 #define EM_SETRECTNP 180
1571 #define EM_SETSEL 177
1572 #define EM_SETTABSTOPS 203
1573 #define EM_SETWORDBREAKPROC 208
1574 #define EM_UNDO 199
1575 
1576 #define EN_CHANGE 768
1577 #define EN_ERRSPACE 1280
1578 #define EN_HSCROLL 1537
1579 #define EN_KILLFOCUS 512
1580 #define EN_MAXTEXT 1281
1581 #define EN_SETFOCUS 256
1582 #define EN_UPDATE 1024
1583 #define EN_VSCROLL 1538
1584 #define LB_ADDFILE 406
1585 #define LB_ADDSTRING 384
1586 #define LB_DELETESTRING 386
1587 #define LB_DIR 397
1588 #define LB_FINDSTRING 399
1589 #define LB_FINDSTRINGEXACT 418
1590 #define LB_GETANCHORINDEX 413
1591 #define LB_GETCARETINDEX 415
1592 #define LB_GETCOUNT 395
1593 #define LB_GETCURSEL 392
1594 #define LB_GETHORIZONTALEXTENT 403
1595 #define LB_GETITEMDATA 409
1596 #define LB_GETITEMHEIGHT 417
1597 #define LB_GETITEMRECT 408
1598 #define LB_GETLOCALE 422
1599 #define LB_GETSEL 391
1600 #define LB_GETSELCOUNT 400
1601 #define LB_GETSELITEMS 401
1602 #define LB_GETTEXT 393
1603 #define LB_GETTEXTLEN 394
1604 #define LB_GETTOPINDEX 398
1605 #define LB_INITSTORAGE 424
1606 #define LB_INSERTSTRING 385
1607 #define LB_ITEMFROMPOINT 425
1608 #define LB_RESETCONTENT 388
1609 #define LB_SELECTSTRING 396
1610 #define LB_SELITEMRANGE 411
1611 #define LB_SELITEMRANGEEX 387
1612 #define LB_SETANCHORINDEX 412
1613 #define LB_SETCARETINDEX 414
1614 #define LB_SETCOLUMNWIDTH 405
1615 #define LB_SETCOUNT 423
1616 #define LB_SETCURSEL 390
1617 #define LB_SETHORIZONTALEXTENT 404
1618 #define LB_SETITEMDATA 410
1619 #define LB_SETITEMHEIGHT 416
1620 #define LB_SETLOCALE 421
1621 #define LB_SETSEL 389
1622 #define LB_SETTABSTOPS 402
1623 #define LB_SETTOPINDEX 407
1624 #define LBN_DBLCLK 2
1625 #define LBN_ERRSPACE (-2)
1626 #define LBN_KILLFOCUS 5
1627 #define LBN_SELCANCEL 3
1628 #define LBN_SELCHANGE 1
1629 #define LBN_SETFOCUS 4
1630 #define SBM_ENABLE_ARROWS 228
1631 #define SBM_GETPOS 225
1632 #define SBM_GETRANGE 227
1633 #define SBM_GETSCROLLINFO 234
1634 #define SBM_SETPOS 224
1635 #define SBM_SETRANGE 226
1636 #define SBM_SETRANGEREDRAW 230
1637 #define SBM_SETSCROLLINFO 233
1638 #define STM_GETICON 369
1639 #define STM_GETIMAGE 371
1640 #define STM_SETICON 368
1641 #define STM_SETIMAGE 370
1642 #define STN_CLICKED 0
1643 #define STN_DBLCLK 1
1644 #define STN_DISABLE 3
1645 #define STN_ENABLE 2
1646 #define DM_GETDEFID WM_USER
1647 #define DM_SETDEFID (WM_USER+1)
1648 #define DM_REPOSITION (WM_USER+2)
1649 #define PSM_PAGEINFO (WM_USER+100)
1650 #define PSM_SHEETINFO (WM_USER+101)
1651 #define PSI_SETACTIVE 1
1652 #define PSI_KILLACTIVE 2
1653 #define PSI_APPLY 3
1654 #define PSI_RESET 4
1655 #define PSI_HASHELP 5
1656 #define PSI_HELP 6
1657 #define PSI_CHANGED 1
1658 #define PSI_GUISTART 2
1659 #define PSI_REBOOT 3
1660 #define PSI_GETSIBLINGS 4
1661 #define DCX_WINDOW 1
1662 #define DCX_CACHE 2
1663 #define DCX_PARENTCLIP 32
1664 #define DCX_CLIPSIBLINGS 16
1665 #define DCX_CLIPCHILDREN 8
1666 #define DCX_NORESETATTRS 4
1667 #define DCX_INTERSECTUPDATE 0x200
1668 #define DCX_LOCKWINDOWUPDATE 0x400
1669 #define DCX_EXCLUDERGN 64
1670 #define DCX_INTERSECTRGN 128
1671 #define DCX_VALIDATE 0x200000
1672 #define GMDI_GOINTOPOPUPS 2
1673 #define GMDI_USEDISABLED 1
1674 #define FKF_AVAILABLE 2
1675 #define FKF_CLICKON 64
1676 #define FKF_FILTERKEYSON 1
1677 #define FKF_HOTKEYACTIVE 4
1678 #define FKF_HOTKEYSOUND 16
1679 #define FKF_CONFIRMHOTKEY 8
1680 #define FKF_INDICATOR 32
1681 #define HCF_HIGHCONTRASTON 1
1682 #define HCF_AVAILABLE 2
1683 #define HCF_HOTKEYACTIVE 4
1684 #define HCF_CONFIRMHOTKEY 8
1685 #define HCF_HOTKEYSOUND 16
1686 #define HCF_INDICATOR 32
1687 #define HCF_HOTKEYAVAILABLE 64
1688 #define MKF_AVAILABLE 2
1689 #define MKF_CONFIRMHOTKEY 8
1690 #define MKF_HOTKEYACTIVE 4
1691 #define MKF_HOTKEYSOUND 16
1692 #define MKF_INDICATOR 32
1693 #define MKF_MOUSEKEYSON 1
1694 #define MKF_MODIFIERS 64
1695 #define MKF_REPLACENUMBERS 128
1696 #define SERKF_ACTIVE 8 /* May be obsolete. Not in recent MS docs. */
1697 #define SERKF_AVAILABLE 2
1698 #define SERKF_INDICATOR 4
1699 #define SERKF_SERIALKEYSON 1
1700 #define SSF_AVAILABLE 2
1701 #define SSF_SOUNDSENTRYON 1
1702 #define SSTF_BORDER 2
1703 #define SSTF_CHARS 1
1704 #define SSTF_DISPLAY 3
1705 #define SSTF_NONE 0
1706 #define SSGF_DISPLAY 3
1707 #define SSGF_NONE 0
1708 #define SSWF_CUSTOM 4
1709 #define SSWF_DISPLAY 3
1710 #define SSWF_NONE 0
1711 #define SSWF_TITLE 1
1712 #define SSWF_WINDOW 2
1713 #define SKF_AUDIBLEFEEDBACK 64
1714 #define SKF_AVAILABLE 2
1715 #define SKF_CONFIRMHOTKEY 8
1716 #define SKF_HOTKEYACTIVE 4
1717 #define SKF_HOTKEYSOUND 16
1718 #define SKF_INDICATOR 32
1719 #define SKF_STICKYKEYSON 1
1720 #define SKF_TRISTATE 128
1721 #define SKF_TWOKEYSOFF 256
1722 #define TKF_AVAILABLE 2
1723 #define TKF_CONFIRMHOTKEY 8
1724 #define TKF_HOTKEYACTIVE 4
1725 #define TKF_HOTKEYSOUND 16
1726 #define TKF_TOGGLEKEYSON 1
1727 #define MDITILE_SKIPDISABLED 2
1728 #define MDITILE_HORIZONTAL 1
1729 #define MDITILE_VERTICAL 0
1730 #define VK_LBUTTON	1
1731 #define VK_RBUTTON	2
1732 #define VK_CANCEL	3
1733 #define VK_MBUTTON	4
1734 
1735 #define VK_BACK	8
1736 #define VK_TAB	9
1737 #define VK_CLEAR	12
1738 #define VK_RETURN	13
1739 #define VK_SHIFT	16
1740 #define VK_CONTROL	17
1741 #define VK_MENU	18
1742 #define VK_PAUSE	19
1743 #define VK_CAPITAL	20
1744 #define VK_KANA	0x15
1745 #define VK_HANGEUL	0x15
1746 #define VK_HANGUL	0x15
1747 #define VK_JUNJA	0x17
1748 #define VK_FINAL	0x18
1749 #define VK_HANJA	0x19
1750 #define VK_KANJI	0x19
1751 #define VK_ESCAPE	0x1B
1752 #define VK_CONVERT	0x1C
1753 #define VK_NONCONVERT	0x1D
1754 #define VK_ACCEPT	0x1E
1755 #define VK_MODECHANGE	0x1F
1756 #define VK_SPACE	32
1757 #define VK_PRIOR	33
1758 #define VK_NEXT	34
1759 #define VK_END	35
1760 #define VK_HOME	36
1761 #define VK_LEFT	37
1762 #define VK_UP	38
1763 #define VK_RIGHT	39
1764 #define VK_DOWN	40
1765 #define VK_SELECT	41
1766 #define VK_PRINT	42
1767 #define VK_EXECUTE	43
1768 #define VK_SNAPSHOT	44
1769 #define VK_INSERT	45
1770 #define VK_DELETE	46
1771 #define VK_HELP	47
1772 #define VK_LWIN	0x5B
1773 #define VK_RWIN	0x5C
1774 #define VK_APPS	0x5D
1775 #define VK_SLEEP	0x5F
1776 #define VK_NUMPAD0	0x60
1777 #define VK_NUMPAD1	0x61
1778 #define VK_NUMPAD2	0x62
1779 #define VK_NUMPAD3	0x63
1780 #define VK_NUMPAD4	0x64
1781 #define VK_NUMPAD5	0x65
1782 #define VK_NUMPAD6	0x66
1783 #define VK_NUMPAD7	0x67
1784 #define VK_NUMPAD8	0x68
1785 #define VK_NUMPAD9	0x69
1786 #define VK_MULTIPLY	0x6A
1787 #define VK_ADD	0x6B
1788 #define VK_SEPARATOR	0x6C
1789 #define VK_SUBTRACT	0x6D
1790 #define VK_DECIMAL	0x6E
1791 #define VK_DIVIDE	0x6F
1792 #define VK_F1	0x70
1793 #define VK_F2	0x71
1794 #define VK_F3	0x72
1795 #define VK_F4	0x73
1796 #define VK_F5	0x74
1797 #define VK_F6	0x75
1798 #define VK_F7	0x76
1799 #define VK_F8	0x77
1800 #define VK_F9	0x78
1801 #define VK_F10	0x79
1802 #define VK_F11	0x7A
1803 #define VK_F12	0x7B
1804 #define VK_F13	0x7C
1805 #define VK_F14	0x7D
1806 #define VK_F15	0x7E
1807 #define VK_F16	0x7F
1808 #define VK_F17	0x80
1809 #define VK_F18	0x81
1810 #define VK_F19	0x82
1811 #define VK_F20	0x83
1812 #define VK_F21	0x84
1813 #define VK_F22	0x85
1814 #define VK_F23	0x86
1815 #define VK_F24	0x87
1816 #define VK_NUMLOCK	0x90
1817 #define VK_SCROLL	0x91
1818 #define VK_LSHIFT	0xA0
1819 #define VK_RSHIFT	0xA1
1820 #define VK_LCONTROL	0xA2
1821 #define VK_RCONTROL	0xA3
1822 #define VK_LMENU	0xA4
1823 #define VK_RMENU	0xA5
1824 
1825 #define VK_OEM_1	0xBA
1826 
1827 #define VK_OEM_2	0xBF
1828 #define VK_OEM_3	0xC0
1829 #define VK_OEM_4	0xDB
1830 #define VK_OEM_5	0xDC
1831 #define VK_OEM_6	0xDD
1832 #define VK_OEM_7	0xDE
1833 #define VK_OEM_8	0xDF
1834 
1835 #define VK_PROCESSKEY	0xE5
1836 
1837 #define VK_ATTN	0xF6
1838 #define VK_CRSEL	0xF7
1839 #define VK_EXSEL	0xF8
1840 #define VK_EREOF	0xF9
1841 #define VK_PLAY	0xFA
1842 #define VK_ZOOM	0xFB
1843 #define VK_NONAME	0xFC
1844 #define VK_PA1	0xFD
1845 #define VK_OEM_CLEAR	0xFE
1846 #define TME_HOVER	1
1847 #define TME_LEAVE	2
1848 #define TME_QUERY	0x40000000
1849 #define TME_CANCEL	0x80000000
1850 #define HOVER_DEFAULT	0xFFFFFFFF
1851 #define MK_LBUTTON	1
1852 #define MK_RBUTTON	2
1853 #define MK_SHIFT	4
1854 #define MK_CONTROL	8
1855 #define MK_MBUTTON	16
1856 
1857 #define TPM_CENTERALIGN 4
1858 #define TPM_LEFTALIGN 0
1859 #define TPM_RIGHTALIGN 8
1860 #define TPM_LEFTBUTTON 0
1861 #define TPM_RIGHTBUTTON 2
1862 #define TPM_HORIZONTAL 0
1863 #define TPM_VERTICAL 64
1864 #define TPM_TOPALIGN 0
1865 #define TPM_VCENTERALIGN 16
1866 #define TPM_BOTTOMALIGN 32
1867 #define TPM_NONOTIFY 128
1868 #define TPM_RETURNCMD 256
1869 
1870 #define HELP_COMMAND 0x102
1871 #define HELP_CONTENTS 3
1872 #define HELP_CONTEXT 1
1873 #define HELP_CONTEXTPOPUP 8
1874 #define HELP_FORCEFILE 9
1875 #define HELP_HELPONHELP 4
1876 #define HELP_INDEX 3
1877 #define HELP_KEY 0x101
1878 #define HELP_MULTIKEY 0x201
1879 #define HELP_PARTIALKEY 0x105
1880 #define HELP_QUIT 2
1881 #define HELP_SETCONTENTS 5
1882 #define HELP_SETINDEX 5
1883 #define HELP_SETWINPOS 0x203
1884 #define HELP_CONTEXTMENU 0xa
1885 #define HELP_FINDER 0xb
1886 #define HELP_WM_HELP 0xc
1887 #define HELP_TCARD 0x8000
1888 #define HELP_TCARD_DATA 16
1889 #define HELP_TCARD_OTHER_CALLER 0x11
1890 #define IDH_NO_HELP	28440
1891 #define IDH_MISSING_CONTEXT	28441
1892 #define IDH_GENERIC_HELP_BUTTON	28442
1893 #define IDH_OK	28443
1894 #define IDH_CANCEL	28444
1895 #define IDH_HELP	28445
1896 #define LB_CTLCODE 0
1897 #define LB_OKAY 0
1898 #define LB_ERR (-1)
1899 #define LB_ERRSPACE (-2)
1900 #define CB_OKAY 0
1901 #define CB_ERR (-1)
1902 #define CB_ERRSPACE (-2)
1903 #define HIDE_WINDOW 0
1904 #define SHOW_OPENWINDOW 1
1905 #define SHOW_ICONWINDOW 2
1906 #define SHOW_FULLSCREEN 3
1907 #define SHOW_OPENNOACTIVATE 4
1908 #define SW_PARENTCLOSING 1
1909 #define SW_OTHERZOOM 2
1910 #define SW_PARENTOPENING 3
1911 #define SW_OTHERUNZOOM 4
1912 #define KF_EXTENDED 256
1913 #define KF_DLGMODE 2048
1914 #define KF_MENUMODE 4096
1915 #define KF_ALTDOWN 8192
1916 #define KF_REPEAT 16384
1917 #define KF_UP 32768
1918 #define WSF_VISIBLE 1
1919 #define PWR_OK 1
1920 #define PWR_FAIL (-1)
1921 #define PWR_SUSPENDREQUEST 1
1922 #define PWR_SUSPENDRESUME 2
1923 #define PWR_CRITICALRESUME 3
1924 #define NFR_ANSI 1
1925 #define NFR_UNICODE 2
1926 #define NF_QUERY 3
1927 #define NF_REQUERY 4
1928 #define MENULOOP_WINDOW 0
1929 #define MENULOOP_POPUP 1
1930 #define WMSZ_LEFT 1
1931 #define WMSZ_RIGHT 2
1932 #define WMSZ_TOP 3
1933 #define WMSZ_TOPLEFT 4
1934 #define WMSZ_TOPRIGHT 5
1935 #define WMSZ_BOTTOM 6
1936 #define WMSZ_BOTTOMLEFT 7
1937 #define WMSZ_BOTTOMRIGHT 8
1938 #define HTERROR (-2)
1939 #define HTTRANSPARENT (-1)
1940 #define HTNOWHERE 0
1941 #define HTCLIENT 1
1942 #define HTCAPTION 2
1943 #define HTSYSMENU 3
1944 #define HTGROWBOX 4
1945 #define HTSIZE 4
1946 #define HTMENU 5
1947 #define HTHSCROLL 6
1948 #define HTVSCROLL 7
1949 #define HTMINBUTTON 8
1950 #define HTMAXBUTTON 9
1951 #define HTREDUCE 8
1952 #define HTZOOM 9
1953 #define HTLEFT 10
1954 #define HTSIZEFIRST 10
1955 #define HTRIGHT 11
1956 #define HTTOP 12
1957 #define HTTOPLEFT 13
1958 #define HTTOPRIGHT 14
1959 #define HTBOTTOM 15
1960 #define HTBOTTOMLEFT 16
1961 #define HTBOTTOMRIGHT 17
1962 #define HTSIZELAST 17
1963 #define HTBORDER 18
1964 #define HTOBJECT 19
1965 #define HTCLOSE 20
1966 #define HTHELP 21
1967 #define MA_ACTIVATE 1
1968 #define MA_ACTIVATEANDEAT 2
1969 #define MA_NOACTIVATE 3
1970 #define MA_NOACTIVATEANDEAT 4
1971 #define SIZE_RESTORED 0
1972 #define SIZE_MINIMIZED 1
1973 #define SIZE_MAXIMIZED 2
1974 #define SIZE_MAXSHOW 3
1975 #define SIZE_MAXHIDE 4
1976 #define SIZENORMAL 0
1977 #define SIZEICONIC 1
1978 #define SIZEFULLSCREEN 2
1979 #define SIZEZOOMSHOW 3
1980 #define SIZEZOOMHIDE 4
1981 #define WVR_ALIGNTOP 16
1982 #define WVR_ALIGNLEFT 32
1983 #define WVR_ALIGNBOTTOM 64
1984 #define WVR_ALIGNRIGHT 128
1985 #define WVR_HREDRAW 256
1986 #define WVR_VREDRAW 512
1987 #define WVR_REDRAW (WVR_HREDRAW|WVR_VREDRAW)
1988 #define WVR_VALIDRECTS 1024
1989 #define PRF_CHECKVISIBLE 1
1990 #define PRF_NONCLIENT 2
1991 #define PRF_CLIENT 4
1992 #define PRF_ERASEBKGND 8
1993 #define PRF_CHILDREN 16
1994 #define PRF_OWNED 32
1995 #define IDANI_OPEN 1
1996 #define IDANI_CLOSE 2
1997 #define IDANI_CAPTION 3
1998 #define WPF_RESTORETOMAXIMIZED 2
1999 #define WPF_SETMINPOSITION 1
2000 #define ODT_MENU 1
2001 #define ODT_LISTBOX 2
2002 #define ODT_COMBOBOX 3
2003 #define ODT_BUTTON 4
2004 #define ODT_STATIC 5
2005 #define ODA_DRAWENTIRE 1
2006 #define ODA_SELECT 2
2007 #define ODA_FOCUS 4
2008 #define ODS_SELECTED 1
2009 #define ODS_GRAYED 2
2010 #define ODS_DISABLED 4
2011 #define ODS_CHECKED 8
2012 #define ODS_FOCUS 16
2013 #define ODS_DEFAULT 32
2014 #define ODS_COMBOBOXEDIT 4096
2015 #define IDHOT_SNAPWINDOW (-1)
2016 #define IDHOT_SNAPDESKTOP (-2)
2017 #define DBWF_LPARAMPOINTER 0x8000
2018 #define DLGWINDOWEXTRA 30
2019 #define MNC_IGNORE 0
2020 #define MNC_CLOSE 1
2021 #define MNC_EXECUTE 2
2022 #define MNC_SELECT 3
2023 #define DOF_EXECUTABLE 0x8001
2024 #define DOF_DOCUMENT 0x8002
2025 #define DOF_DIRECTORY 0x8003
2026 #define DOF_MULTIPLE 0x8004
2027 #define DOF_PROGMAN 1
2028 #define DOF_SHELLDATA 2
2029 #define DO_DROPFILE 0x454C4946
2030 #define DO_PRINTFILE 0x544E5250
2031 #define SW_SCROLLCHILDREN 1
2032 #define SW_INVALIDATE 2
2033 #define SW_ERASE 4
2034 
2035 #define SC_SIZE 0xF000
2036 #define SC_MOVE 0xF010
2037 #define SC_MINIMIZE 0xF020
2038 #define SC_ICON 0xf020
2039 #define SC_MAXIMIZE 0xF030
2040 #define SC_ZOOM 0xF030
2041 #define SC_NEXTWINDOW 0xF040
2042 #define SC_PREVWINDOW 0xF050
2043 #define SC_CLOSE 0xF060
2044 #define SC_VSCROLL 0xF070
2045 #define SC_HSCROLL 0xF080
2046 #define SC_MOUSEMENU 0xF090
2047 #define SC_KEYMENU 0xF100
2048 #define SC_ARRANGE 0xF110
2049 #define SC_RESTORE 0xF120
2050 #define SC_TASKLIST 0xF130
2051 #define SC_SCREENSAVE 0xF140
2052 #define SC_HOTKEY 0xF150
2053 #define SC_DEFAULT 0xF160
2054 #define SC_MONITORPOWER 0xF170
2055 #define SC_CONTEXTHELP 0xF180
2056 #define SC_SEPARATOR 0xF00F
2057 #define EC_LEFTMARGIN 1
2058 #define EC_RIGHTMARGIN 2
2059 #define EC_USEFONTINFO 0xffff
2060 #define DC_HASDEFID 0x534B
2061 #define DLGC_WANTARROWS 1
2062 #define DLGC_WANTTAB 2
2063 #define DLGC_WANTALLKEYS 4
2064 #define DLGC_WANTMESSAGE 4
2065 #define DLGC_HASSETSEL 8
2066 #define DLGC_DEFPUSHBUTTON 16
2067 #define DLGC_UNDEFPUSHBUTTON 32
2068 #define DLGC_RADIOBUTTON 64
2069 #define DLGC_WANTCHARS 128
2070 #define DLGC_STATIC 256
2071 #define DLGC_BUTTON 0x2000
2072 #define LB_CTLCODE 0
2073 #define WA_INACTIVE 0
2074 #define WA_ACTIVE 1
2075 #define WA_CLICKACTIVE 2
2076 #define ICON_SMALL 0
2077 #define ICON_BIG 1
2078 
2079 #define HBMMENU_CALLBACK ((HBITMAP) -1)
2080 #define HBMMENU_SYSTEM ((HBITMAP)1)
2081 #define HBMMENU_MBAR_RESTORE ((HBITMAP)2)
2082 #define HBMMENU_MBAR_MINIMIZE ((HBITMAP)3)
2083 #define HBMMENU_MBAR_CLOSE ((HBITMAP)5)
2084 #define HBMMENU_MBAR_CLOSE_D ((HBITMAP)6)
2085 #define HBMMENU_MBAR_MINIMIZE_D ((HBITMAP)7)
2086 #define HBMMENU_POPUP_CLOSE ((HBITMAP)8)
2087 #define HBMMENU_POPUP_RESTORE ((HBITMAP)9)
2088 #define HBMMENU_POPUP_MAXIMIZE ((HBITMAP)10)
2089 #define HBMMENU_POPUP_MINIMIZE ((HBITMAP)11)
2090 #define MOD_ALT 1
2091 #define MOD_CONTROL 2
2092 #define MOD_SHIFT 4
2093 #define MOD_WIN 8
2094 #define MOD_IGNORE_ALL_MODIFIER 1024
2095 #define MOD_ON_KEYUP  2048
2096 #define MOD_RIGHT 16384
2097 #define MOD_LEFT 32768
2098 #define LLKHF_EXTENDED	(KF_EXTENDED >> 8)
2099 #define LLKHF_INJECTED	0x00000010
2100 #define LLKHF_ALTDOWN	(KF_ALTDOWN >> 8)
2101 #define LLKHF_UP	(KF_UP >> 8)
2102 
2103 #define CURSOR_SHOWING 0x00000001
2104 #define WS_ACTIVECAPTION 0x00000001
2105 
2106 #define ENDSESSION_LOGOFF 0x80000000
2107 
2108 #define GA_PARENT 1
2109 #define GA_ROOT 2
2110 #define GA_ROOTOWNER 3
2111 
2112 #define MAPVK_VK_TO_VSC    0
2113 #define MAPVK_VSC_TO_VK    1
2114 #define MAPVK_VK_TO_CHAR   2
2115 #define MAPVK_VSC_TO_VK_EX 3
2116 #define MAPVK_VK_TO_VSC_EX 4
2117 
2118 #define INPUT_MOUSE 0x00000000
2119 #define INPUT_KEYBOARD 0x00000001
2120 #define INPUT_HARDWARE 0x00000002
2121 
2122 #ifndef RC_INVOKED
2123 typedef BOOL(CALLBACK *DLGPROC)(HWND,UINT,WPARAM,LPARAM);
2124 typedef VOID(CALLBACK *TIMERPROC)(HWND,UINT,UINT,DWORD);
2125 typedef BOOL(CALLBACK *GRAYSTRINGPROC)(HDC,LPARAM,int);
2126 typedef LRESULT(CALLBACK *HOOKPROC)(int,WPARAM,LPARAM);
2127 typedef BOOL(CALLBACK *PROPENUMPROCA)(HWND,LPCSTR,HANDLE);
2128 typedef BOOL(CALLBACK *PROPENUMPROCW)(HWND,LPCWSTR,HANDLE);
2129 typedef BOOL(CALLBACK *PROPENUMPROCEXA)(HWND,LPSTR,HANDLE,DWORD);
2130 typedef BOOL(CALLBACK *PROPENUMPROCEXW)(HWND,LPWSTR,HANDLE,DWORD);
2131 typedef int(CALLBACK *EDITWORDBREAKPROCA)(LPSTR,int,int,int);
2132 typedef int(CALLBACK *EDITWORDBREAKPROCW)(LPWSTR,int,int,int);
2133 typedef LRESULT(CALLBACK *WNDPROC)(HWND,UINT,WPARAM,LPARAM);
2134 typedef BOOL(CALLBACK *DRAWSTATEPROC)(HDC,LPARAM,WPARAM,int,int);
2135 typedef BOOL(CALLBACK *WNDENUMPROC)(HWND,LPARAM);
2136 typedef BOOL(CALLBACK *ENUMWINDOWSPROC)(HWND,LPARAM);
2137 typedef BOOL(CALLBACK* MONITORENUMPROC)(HMONITOR,HDC,LPRECT,LPARAM);
2138 typedef BOOL(CALLBACK *NAMEENUMPROCA)(LPSTR,LPARAM);
2139 typedef BOOL(CALLBACK *NAMEENUMPROCW)(LPWSTR,LPARAM);
2140 typedef NAMEENUMPROCA DESKTOPENUMPROCA;
2141 typedef NAMEENUMPROCW DESKTOPENUMPROCW;
2142 typedef NAMEENUMPROCA WINSTAENUMPROCA;
2143 typedef NAMEENUMPROCW WINSTAENUMPROCW;
2144 typedef void(CALLBACK *SENDASYNCPROC)(HWND,UINT,DWORD,LRESULT);
2145 DECLARE_HANDLE(HDWP);
2146 DECLARE_HANDLE(HDEVNOTIFY);
2147 typedef struct tagMENUGETOBJECTINFO {
2148   DWORD  dwFlags;
2149   UINT  uPos;
2150   HMENU  hmenu;
2151   PVOID  riid;
2152   PVOID  pvObj;
2153 } MENUGETOBJECTINFO, *PMENUGETOBJECTINFO;
2154 typedef struct tagACCEL {
2155 	BYTE fVirt;
2156 	WORD key;
2157 	WORD cmd;
2158 } ACCEL,*LPACCEL;
2159 typedef struct tagACCESSTIMEOUT {
2160 	UINT cbSize;
2161 	DWORD dwFlags;
2162 	DWORD iTimeOutMSec;
2163 } ACCESSTIMEOUT, *LPACCESSTIMEOUT;
2164 typedef struct tagANIMATIONINFO {
2165 	UINT cbSize;
2166 	int iMinAnimate;
2167 } ANIMATIONINFO,*LPANIMATIONINFO;
2168 typedef struct tagCREATESTRUCTA {
2169 	LPVOID	lpCreateParams;
2170 	HINSTANCE	hInstance;
2171 	HMENU	hMenu;
2172 	HWND	hwndParent;
2173 	int	cy;
2174 	int	cx;
2175 	int	y;
2176 	int	x;
2177 	LONG	style;
2178 	LPCSTR	lpszName;
2179 	LPCSTR	lpszClass;
2180 	DWORD	dwExStyle;
2181 } CREATESTRUCTA,*LPCREATESTRUCTA;
2182 typedef struct tagCREATESTRUCTW {
2183 	LPVOID	lpCreateParams;
2184 	HINSTANCE	hInstance;
2185 	HMENU	hMenu;
2186 	HWND	hwndParent;
2187 	int	cy;
2188 	int	cx;
2189 	int	y;
2190 	int	x;
2191 	LONG	style;
2192 	LPCWSTR	lpszName;
2193 	LPCWSTR	lpszClass;
2194 	DWORD	dwExStyle;
2195 } CREATESTRUCTW,*LPCREATESTRUCTW;
2196 typedef struct tagCBT_CREATEWNDA {
2197 	LPCREATESTRUCTA lpcs;
2198 	HWND	hwndInsertAfter;
2199 } CBT_CREATEWNDA, *LPCBT_CREATEWNDA;
2200 typedef struct tagCBT_CREATEWNDW {
2201 	LPCREATESTRUCTW lpcs;
2202 	HWND	hwndInsertAfter;
2203 } CBT_CREATEWNDW, *LPCBT_CREATEWNDW;
2204 typedef struct tagCBTACTIVATESTRUCT {
2205 	BOOL fMouse;
2206 	HWND hWndActive;
2207 } CBTACTIVATESTRUCT,*LPCBTACTIVATESTRUCT;
2208 typedef struct tagCLIENTCREATESTRUCT {
2209 	HANDLE	hWindowMenu;
2210 	UINT	idFirstChild;
2211 } CLIENTCREATESTRUCT,*LPCLIENTCREATESTRUCT;
2212 typedef struct tagCOMPAREITEMSTRUCT {
2213 	UINT	CtlType;
2214 	UINT	CtlID;
2215 	HWND	hwndItem;
2216 	UINT	itemID1;
2217 	DWORD	itemData1;
2218 	UINT	itemID2;
2219 	DWORD	itemData2;
2220 	DWORD	dwLocaleId;
2221 } COMPAREITEMSTRUCT,*LPCOMPAREITEMSTRUCT;
2222 typedef struct tagCOPYDATASTRUCT {
2223 	DWORD dwData;
2224 	DWORD cbData;
2225 	PVOID lpData;
2226 } COPYDATASTRUCT,*PCOPYDATASTRUCT;
2227 typedef struct tagCURSORSHAPE {
2228 	int xHotSpot;
2229 	int yHotSpot;
2230 	int cx;
2231 	int cy;
2232 	int cbWidth;
2233     BYTE Planes;
2234     BYTE BitsPixel;
2235 } CURSORSHAPE,*LPCURSORSHAPE;
2236 typedef struct tagCWPRETSTRUCT {
2237 	LRESULT lResult;
2238 	LPARAM lParam;
2239 	WPARAM wParam;
2240 	DWORD message;
2241 	HWND hwnd;
2242 } CWPRETSTRUCT;
2243 typedef struct tagCWPSTRUCT {
2244 	LPARAM lParam;
2245 	WPARAM wParam;
2246 	UINT message;
2247 	HWND hwnd;
2248 } CWPSTRUCT,*PCWPSTRUCT;
2249 typedef struct tagDEBUGHOOKINFO {
2250 	DWORD idThread;
2251 	DWORD idThreadInstaller;
2252 	LPARAM lParam;
2253 	WPARAM wParam;
2254 	int code;
2255 } DEBUGHOOKINFO,*PDEBUGHOOKINFO,*LPDEBUGHOOKINFO;
2256 typedef struct tagDELETEITEMSTRUCT {
2257 	UINT CtlType;
2258 	UINT CtlID;
2259 	UINT itemID;
2260 	HWND hwndItem;
2261 	UINT itemData;
2262 } DELETEITEMSTRUCT,*PDELETEITEMSTRUCT,*LPDELETEITEMSTRUCT;
2263 #pragma pack(push,2)
2264 typedef struct {
2265 	DWORD style;
2266 	DWORD dwExtendedStyle;
2267 	short x;
2268 	short y;
2269 	short cx;
2270 	short cy;
2271 	WORD id;
2272 } DLGITEMTEMPLATE,*LPDLGITEMTEMPLATE;
2273 typedef struct {
2274 	DWORD style;
2275 	DWORD dwExtendedStyle;
2276 	WORD cdit;
2277 	short x;
2278 	short y;
2279 	short cx;
2280 	short cy;
2281 } DLGTEMPLATE,*LPDLGTEMPLATE,*LPDLGTEMPLATEA,*LPDLGTEMPLATEW;
2282 typedef const DLGTEMPLATE *LPCDLGTEMPLATE;
2283 #pragma pack(pop)
2284 typedef struct tagDRAWITEMSTRUCT {
2285 	UINT CtlType;
2286 	UINT CtlID;
2287 	UINT itemID;
2288 	UINT itemAction;
2289 	UINT itemState;
2290 	HWND hwndItem;
2291 	HDC	hDC;
2292 	RECT rcItem;
2293 	DWORD itemData;
2294 } DRAWITEMSTRUCT,*LPDRAWITEMSTRUCT,*PDRAWITEMSTRUCT;
2295 typedef struct {
2296 	UINT cbSize;
2297 	int iTabLength;
2298 	int iLeftMargin;
2299 	int iRightMargin;
2300 	UINT uiLengthDrawn;
2301 } DRAWTEXTPARAMS,*LPDRAWTEXTPARAMS;
2302 typedef struct tagPAINTSTRUCT {
2303 	HDC	hdc;
2304 	BOOL fErase;
2305 	RECT rcPaint;
2306 	BOOL fRestore;
2307 	BOOL fIncUpdate;
2308 	BYTE rgbReserved[32];
2309 } PAINTSTRUCT,*LPPAINTSTRUCT;
2310 typedef struct tagMSG {
2311 	HWND hwnd;
2312 	UINT message;
2313 	WPARAM wParam;
2314 	LPARAM lParam;
2315 	DWORD time;
2316 	POINT pt;
2317 } MSG,*LPMSG,*PMSG;
2318 typedef struct _ICONINFO {
2319 	BOOL fIcon;
2320 	DWORD xHotspot;
2321 	DWORD yHotspot;
2322 	HBITMAP hbmMask;
2323 	HBITMAP hbmColor;
2324 } ICONINFO,*PICONINFO;
2325 typedef struct tagNMHDR {
2326 	HWND hwndFrom;
2327 	UINT idFrom;
2328 	UINT code;
2329 } NMHDR,*LPNMHDR;
2330 typedef struct _WNDCLASSA {
2331 	UINT style;
2332 	WNDPROC lpfnWndProc;
2333 	int cbClsExtra;
2334 	int cbWndExtra;
2335 	HINSTANCE hInstance;
2336 	HICON hIcon;
2337 	HCURSOR hCursor;
2338 	HBRUSH hbrBackground;
2339 	LPCSTR lpszMenuName;
2340 	LPCSTR lpszClassName;
2341 } WNDCLASSA,*LPWNDCLASSA,*PWNDCLASSA;
2342 typedef struct _WNDCLASSW {
2343 	UINT style;
2344 	WNDPROC lpfnWndProc;
2345 	int cbClsExtra;
2346 	int cbWndExtra;
2347 	HINSTANCE hInstance;
2348 	HICON hIcon;
2349 	HCURSOR hCursor;
2350 	HBRUSH hbrBackground;
2351 	LPCWSTR lpszMenuName;
2352 	LPCWSTR lpszClassName;
2353 } WNDCLASSW,*LPWNDCLASSW,*PWNDCLASSW;
2354 typedef struct _WNDCLASSEXA {
2355 	UINT cbSize;
2356 	UINT style;
2357 	WNDPROC lpfnWndProc;
2358 	int cbClsExtra;
2359 	int cbWndExtra;
2360 	HINSTANCE hInstance;
2361 	HICON hIcon;
2362 	HCURSOR hCursor;
2363 	HBRUSH hbrBackground;
2364 	LPCSTR lpszMenuName;
2365 	LPCSTR lpszClassName;
2366 	HICON hIconSm;
2367 } WNDCLASSEXA,*LPWNDCLASSEXA,*PWNDCLASSEXA;
2368 typedef struct _WNDCLASSEXW {
2369 	UINT cbSize;
2370 	UINT style;
2371 	WNDPROC lpfnWndProc;
2372 	int cbClsExtra;
2373 	int cbWndExtra;
2374 	HINSTANCE hInstance;
2375 	HICON hIcon;
2376 	HCURSOR hCursor;
2377 	HBRUSH hbrBackground;
2378 	LPCWSTR lpszMenuName;
2379 	LPCWSTR lpszClassName;
2380 	HICON hIconSm;
2381 } WNDCLASSEXW,*LPWNDCLASSEXW,*PWNDCLASSEXW;
2382 typedef struct tagMENUITEMINFOA {
2383 	UINT cbSize;
2384 	UINT fMask;
2385 	UINT fType;
2386 	UINT fState;
2387 	UINT wID;
2388 	HMENU hSubMenu;
2389 	HBITMAP hbmpChecked;
2390 	HBITMAP hbmpUnchecked;
2391 	ULONG_PTR dwItemData;
2392 	LPSTR dwTypeData;
2393 	UINT cch;
2394 #if (_WIN32_WINNT >= 0x0500)
2395 	HBITMAP hbmpItem;
2396 #endif
2397 } MENUITEMINFOA,*LPMENUITEMINFOA;
2398 typedef const MENUITEMINFOA *LPCMENUITEMINFOA;
2399 typedef struct tagMENUITEMINFOW {
2400 	UINT cbSize;
2401 	UINT fMask;
2402 	UINT fType;
2403 	UINT fState;
2404 	UINT wID;
2405 	HMENU hSubMenu;
2406 	HBITMAP hbmpChecked;
2407 	HBITMAP hbmpUnchecked;
2408 	ULONG_PTR dwItemData;
2409 	LPWSTR dwTypeData;
2410 	UINT cch;
2411 #if (_WIN32_WINNT >= 0x0500)
2412 	HBITMAP hbmpItem;
2413 #endif
2414 } MENUITEMINFOW,*LPMENUITEMINFOW;
2415 typedef const MENUITEMINFOW *LPCMENUITEMINFOW;
2416 typedef struct tagSCROLLINFO {
2417 	UINT cbSize;
2418 	UINT fMask;
2419 	int nMin;
2420 	int nMax;
2421 	UINT nPage;
2422 	int nPos;
2423 	int nTrackPos;
2424 } SCROLLINFO,*LPSCROLLINFO;
2425 typedef const SCROLLINFO *LPCSCROLLINFO;
2426 typedef struct _WINDOWPLACEMENT {
2427 	UINT length;
2428 	UINT flags;
2429 	UINT showCmd;
2430 	POINT ptMinPosition;
2431 	POINT ptMaxPosition;
2432 	RECT rcNormalPosition;
2433 } WINDOWPLACEMENT,*LPWINDOWPLACEMENT,*PWINDOWPLACEMENT;
2434 typedef struct {
2435 	WORD versionNumber;
2436 	WORD offset;
2437 } MENUITEMTEMPLATEHEADER;
2438 typedef struct {
2439 	WORD mtOption;
2440 	WORD mtID;
2441 	WCHAR mtString[1];
2442 } MENUITEMTEMPLATE;
2443 typedef void MENUTEMPLATE,MENUTEMPLATEA,MENUTEMPLATEW,*LPMENUTEMPLATEA,*LPMENUTEMPLATEW,*LPMENUTEMPLATE;
2444 typedef struct tagHELPINFO {
2445 	UINT cbSize;
2446 	int iContextType;
2447 	int iCtrlId;
2448 	HANDLE hItemHandle;
2449 	DWORD dwContextId;
2450 	POINT MousePos;
2451 } HELPINFO,*LPHELPINFO;
2452 typedef void(CALLBACK *MSGBOXCALLBACK)(LPHELPINFO);
2453 typedef struct {
2454 	UINT cbSize;
2455 	HWND hwndOwner;
2456 	HINSTANCE hInstance;
2457 	LPCSTR lpszText;
2458 	LPCSTR lpszCaption;
2459 	DWORD dwStyle;
2460 	LPCSTR lpszIcon;
2461 	DWORD dwContextHelpId;
2462 	MSGBOXCALLBACK lpfnMsgBoxCallback;
2463 	DWORD dwLanguageId;
2464 } MSGBOXPARAMSA,*PMSGBOXPARAMSA,*LPMSGBOXPARAMSA;
2465 typedef struct {
2466 	UINT cbSize;
2467 	HWND hwndOwner;
2468 	HINSTANCE hInstance;
2469 	LPCWSTR lpszText;
2470 	LPCWSTR lpszCaption;
2471 	DWORD dwStyle;
2472 	LPCWSTR lpszIcon;
2473 	DWORD dwContextHelpId;
2474 	MSGBOXCALLBACK lpfnMsgBoxCallback;
2475 	DWORD dwLanguageId;
2476 } MSGBOXPARAMSW,*PMSGBOXPARAMSW,*LPMSGBOXPARAMSW;
2477 typedef struct tagUSEROBJECTFLAGS {
2478 	BOOL fInherit;
2479 	BOOL fReserved;
2480 	DWORD dwFlags;
2481 } USEROBJECTFLAGS;
2482 typedef struct tagFILTERKEYS {
2483 	UINT cbSize;
2484 	DWORD dwFlags;
2485 	DWORD iWaitMSec;
2486 	DWORD iDelayMSec;
2487 	DWORD iRepeatMSec;
2488 	DWORD iBounceMSec;
2489 } FILTERKEYS;
2490 typedef struct tagHIGHCONTRASTA {
2491 	UINT cbSize;
2492 	DWORD dwFlags;
2493 	LPSTR lpszDefaultScheme;
2494 } HIGHCONTRASTA,*LPHIGHCONTRASTA;
2495 typedef struct tagHIGHCONTRASTW {
2496 	UINT cbSize;
2497 	DWORD dwFlags;
2498 	LPWSTR lpszDefaultScheme;
2499 } HIGHCONTRASTW,*LPHIGHCONTRASTW;
2500 
2501 #ifndef NOGDI
2502 typedef struct tagICONMETRICSA {
2503 	UINT cbSize;
2504 	int iHorzSpacing;
2505 	int iVertSpacing;
2506 	int iTitleWrap;
2507 	LOGFONTA lfFont;
2508 } ICONMETRICSA,*LPICONMETRICSA;
2509 typedef struct tagICONMETRICSW {
2510 	UINT cbSize;
2511 	int iHorzSpacing;
2512 	int iVertSpacing;
2513 	int iTitleWrap;
2514 	LOGFONTW lfFont;
2515 } ICONMETRICSW,*LPICONMETRICSW;
2516 #endif /*  NOGDI */
2517 
2518 typedef struct tagMINIMIZEDMETRICS {
2519 	UINT cbSize;
2520 	int iWidth;
2521 	int iHorzGap;
2522 	int iVertGap;
2523 	int iArrange;
2524 } MINIMIZEDMETRICS,*LPMINIMIZEDMETRICS;
2525 typedef struct tagMOUSEKEYS{
2526 	UINT cbSize;
2527 	DWORD dwFlags;
2528 	DWORD iMaxSpeed;
2529 	DWORD iTimeToMaxSpeed;
2530 	DWORD iCtrlSpeed;
2531 	DWORD dwReserved1;
2532 	DWORD dwReserved2;
2533 } MOUSEKEYS,*LPMOUSEKEYS;
2534 
2535 #ifndef NOGDI
2536 typedef struct tagNONCLIENTMETRICSA {
2537 	UINT cbSize;
2538 	int iBorderWidth;
2539 	int iScrollWidth;
2540 	int iScrollHeight;
2541 	int iCaptionWidth;
2542 	int iCaptionHeight;
2543 	LOGFONTA lfCaptionFont;
2544 	int iSmCaptionWidth;
2545 	int iSmCaptionHeight;
2546 	LOGFONTA lfSmCaptionFont;
2547 	int iMenuWidth;
2548 	int iMenuHeight;
2549 	LOGFONTA lfMenuFont;
2550 	LOGFONTA lfStatusFont;
2551 	LOGFONTA lfMessageFont;
2552 } NONCLIENTMETRICSA,*LPNONCLIENTMETRICSA;
2553 typedef struct tagNONCLIENTMETRICSW {
2554 	UINT cbSize;
2555 	int iBorderWidth;
2556 	int iScrollWidth;
2557 	int iScrollHeight;
2558 	int iCaptionWidth;
2559 	int iCaptionHeight;
2560 	LOGFONTW lfCaptionFont;
2561 	int iSmCaptionWidth;
2562 	int iSmCaptionHeight;
2563 	LOGFONTW lfSmCaptionFont;
2564 	int iMenuWidth;
2565 	int iMenuHeight;
2566 	LOGFONTW lfMenuFont;
2567 	LOGFONTW lfStatusFont;
2568 	LOGFONTW lfMessageFont;
2569 } NONCLIENTMETRICSW,*LPNONCLIENTMETRICSW;
2570 #endif
2571 
2572 typedef struct tagSERIALKEYSA {
2573 	UINT cbSize;
2574 	DWORD dwFlags;
2575 	LPSTR lpszActivePort;
2576 	LPSTR lpszPort;
2577 	UINT iBaudRate;
2578 	UINT iPortState;
2579 	UINT iActive;
2580 } SERIALKEYSA,*LPSERIALKEYSA;
2581 typedef struct tagSERIALKEYSW {
2582 	UINT cbSize;
2583 	DWORD dwFlags;
2584 	LPWSTR lpszActivePort;
2585 	LPWSTR lpszPort;
2586 	UINT iBaudRate;
2587 	UINT iPortState;
2588 	UINT iActive;
2589 } SERIALKEYSW,*LPSERIALKEYSW;
2590 typedef struct tagSOUNDSENTRYA {
2591 	UINT cbSize;
2592 	DWORD dwFlags;
2593 	DWORD iFSTextEffect;
2594 	DWORD iFSTextEffectMSec;
2595 	DWORD iFSTextEffectColorBits;
2596 	DWORD iFSGrafEffect;
2597 	DWORD iFSGrafEffectMSec;
2598 	DWORD iFSGrafEffectColor;
2599 	DWORD iWindowsEffect;
2600 	DWORD iWindowsEffectMSec;
2601 	LPSTR lpszWindowsEffectDLL;
2602 	DWORD iWindowsEffectOrdinal;
2603 } SOUNDSENTRYA,*LPSOUNDSENTRYA;
2604 typedef struct tagSOUNDSENTRYW {
2605 	UINT cbSize;
2606 	DWORD dwFlags;
2607 	DWORD iFSTextEffect;
2608 	DWORD iFSTextEffectMSec;
2609 	DWORD iFSTextEffectColorBits;
2610 	DWORD iFSGrafEffect;
2611 	DWORD iFSGrafEffectMSec;
2612 	DWORD iFSGrafEffectColor;
2613 	DWORD iWindowsEffect;
2614 	DWORD iWindowsEffectMSec;
2615 	LPWSTR lpszWindowsEffectDLL;
2616 	DWORD iWindowsEffectOrdinal;
2617 } SOUNDSENTRYW,*LPSOUNDSENTRYW;
2618 typedef struct tagSTICKYKEYS {
2619 	DWORD cbSize;
2620 	DWORD dwFlags;
2621 } STICKYKEYS,*LPSTICKYKEYS;
2622 typedef struct tagTOGGLEKEYS {
2623 	DWORD cbSize;
2624 	DWORD dwFlags;
2625 } TOGGLEKEYS;
2626 typedef struct tagMOUSEHOOKSTRUCT {
2627 	POINT pt;
2628 	HWND hwnd;
2629 	UINT wHitTestCode;
2630 	DWORD dwExtraInfo;
2631 } MOUSEHOOKSTRUCT,*LPMOUSEHOOKSTRUCT,*PMOUSEHOOKSTRUCT;
2632 typedef struct tagTRACKMOUSEEVENT {
2633 	DWORD cbSize;
2634 	DWORD dwFlags;
2635 	HWND  hwndTrack;
2636 	DWORD dwHoverTime;
2637 } TRACKMOUSEEVENT,*LPTRACKMOUSEEVENT;
2638 typedef struct tagTPMPARAMS {
2639 	UINT cbSize;
2640 	RECT rcExclude;
2641 } TPMPARAMS,*LPTPMPARAMS;
2642 typedef struct tagEVENTMSG {
2643 	UINT message;
2644 	UINT paramL;
2645 	UINT paramH;
2646 	DWORD time;
2647 	HWND hwnd;
2648 } EVENTMSG,*PEVENTMSGMSG,*LPEVENTMSGMSG,*PEVENTMSG,*LPEVENTMSG;
2649 typedef struct _WINDOWPOS {
2650 	HWND hwnd;
2651 	HWND hwndInsertAfter;
2652 	int x;
2653 	int y;
2654 	int cx;
2655 	int cy;
2656 	UINT flags;
2657 } WINDOWPOS,*PWINDOWPOS,*LPWINDOWPOS;
2658 typedef struct tagNCCALCSIZE_PARAMS {
2659 	RECT rgrc[3];
2660 	PWINDOWPOS lppos;
2661 } NCCALCSIZE_PARAMS, *LPNCCALCSIZE_PARAMS;
2662 typedef struct tagMDICREATESTRUCTA {
2663 	LPCSTR szClass;
2664 	LPCSTR szTitle;
2665 	HANDLE hOwner;
2666 	int x;
2667 	int y;
2668 	int cx;
2669 	int cy;
2670 	DWORD style;
2671 	LPARAM lParam;
2672 } MDICREATESTRUCTA,*LPMDICREATESTRUCTA;
2673 typedef struct tagMDICREATESTRUCTW {
2674 	LPCWSTR szClass;
2675 	LPCWSTR szTitle;
2676 	HANDLE hOwner;
2677 	int x;
2678 	int y;
2679 	int cx;
2680 	int cy;
2681 	DWORD style;
2682 	LPARAM lParam;
2683 } MDICREATESTRUCTW,*LPMDICREATESTRUCTW;
2684 typedef struct tagMINMAXINFO {
2685 	POINT ptReserved;
2686 	POINT ptMaxSize;
2687 	POINT ptMaxPosition;
2688 	POINT ptMinTrackSize;
2689 	POINT ptMaxTrackSize;
2690 } MINMAXINFO,*PMINMAXINFO,*LPMINMAXINFO;
2691 typedef struct tagMDINEXTMENU {
2692 	HMENU hmenuIn;
2693 	HMENU hmenuNext;
2694 	HWND hwndNext;
2695 } MDINEXTMENU,*PMDINEXTMENU,*LPMDINEXTMENU;
2696 typedef struct tagMEASUREITEMSTRUCT {
2697 	UINT CtlType;
2698 	UINT CtlID;
2699 	UINT itemID;
2700 	UINT itemWidth;
2701 	UINT itemHeight;
2702 	DWORD itemData;
2703 } MEASUREITEMSTRUCT,*PMEASUREITEMSTRUCT,*LPMEASUREITEMSTRUCT;
2704 typedef struct tagDROPSTRUCT {
2705 	HWND hwndSource;
2706 	HWND hwndSink;
2707 	DWORD wFmt;
2708 	DWORD dwData;
2709 	POINT ptDrop;
2710 	DWORD dwControlData;
2711 } DROPSTRUCT,*PDROPSTRUCT,*LPDROPSTRUCT;
2712 typedef DWORD HELPPOLY;
2713 typedef struct tagMULTIKEYHELPA {
2714 	DWORD mkSize;
2715 	CHAR mkKeylist;
2716 	CHAR szKeyphrase[1];
2717 } MULTIKEYHELPA,*PMULTIKEYHELPA,*LPMULTIKEYHELPA;
2718 typedef struct tagMULTIKEYHELPW {
2719 	DWORD mkSize;
2720 	WCHAR mkKeylist;
2721 	WCHAR szKeyphrase[1];
2722 } MULTIKEYHELPW,*PMULTIKEYHELPW,*LPMULTIKEYHELPW;
2723 typedef struct tagHELPWININFOA {
2724 	int wStructSize;
2725 	int x;
2726 	int y;
2727 	int dx;
2728 	int dy;
2729 	int wMax;
2730 	CHAR rgchMember[2];
2731 } HELPWININFOA,*PHELPWININFOA,*LPHELPWININFOA;
2732 typedef struct tagHELPWININFOW {
2733 	int wStructSize;
2734 	int x;
2735 	int y;
2736 	int dx;
2737 	int dy;
2738 	int wMax;
2739 	WCHAR rgchMember[2];
2740 } HELPWININFOW,*PHELPWININFOW,*LPHELPWININFOW;
2741 typedef struct tagSTYLESTRUCT {
2742 	DWORD styleOld;
2743 	DWORD styleNew;
2744 } STYLESTRUCT,*LPSTYLESTRUCT;
2745 typedef struct tagALTTABINFO {
2746 	DWORD cbSize;
2747 	int   cItems;
2748 	int   cColumns;
2749 	int   cRows;
2750 	int   iColFocus;
2751 	int   iRowFocus;
2752 	int   cxItem;
2753 	int   cyItem;
2754 	POINT ptStart;
2755 } ALTTABINFO,*PALTTABINFO,*LPALTTABINFO;
2756 typedef struct tagCOMBOBOXINFO {
2757 	DWORD cbSize;
2758 	RECT rcItem;
2759 	RECT rcButton;
2760 	DWORD stateButton;
2761 	HWND hwndCombo;
2762 	HWND hwndItem;
2763 	HWND hwndList;
2764 } COMBOBOXINFO,*PCOMBOBOXINFO,*LPCOMBOBOXINFO;
2765 typedef struct tagCURSORINFO {
2766 	DWORD cbSize;
2767 	DWORD flags;
2768 	HCURSOR hCursor;
2769 	POINT ptScreenPos;
2770 } CURSORINFO,*PCURSORINFO,*LPCURSORINFO;
2771 typedef struct tagMENUBARINFO {
2772 	DWORD cbSize;
2773 	RECT  rcBar;
2774 	HMENU hMenu;
2775 	HWND  hwndMenu;
2776 	BOOL  fBarFocused:1;
2777 	BOOL  fFocused:1;
2778 } MENUBARINFO,*PMENUBARINFO;
2779 typedef struct tagMENUINFO {
2780 	DWORD cbSize;
2781 	DWORD fMask;
2782 	DWORD dwStyle;
2783 	UINT cyMax;
2784 	HBRUSH  hbrBack;
2785 	DWORD   dwContextHelpID;
2786 	ULONG_PTR dwMenuData;
2787 } MENUINFO,*LPMENUINFO;
2788 typedef MENUINFO CONST *LPCMENUINFO;
2789 #define CCHILDREN_SCROLLBAR 5
2790 typedef struct tagSCROLLBARINFO {
2791 	DWORD cbSize;
2792 	RECT  rcScrollBar;
2793 	int   dxyLineButton;
2794 	int   xyThumbTop;
2795 	int   xyThumbBottom;
2796 	int   reserved;
2797 	DWORD rgstate[CCHILDREN_SCROLLBAR+1];
2798 } SCROLLBARINFO,*PSCROLLBARINFO,*LPSCROLLBARINFO;
2799 
2800 typedef struct tagWINDOWINFO {
2801 	DWORD cbSize;
2802 	RECT  rcWindow;
2803 	RECT  rcClient;
2804 	DWORD dwStyle;
2805 	DWORD dwExStyle;
2806 	DWORD dwWindowStatus;
2807 	UINT  cxWindowBorders;
2808 	UINT  cyWindowBorders;
2809 	ATOM  atomWindowType;
2810 	WORD  wCreatorVersion;
2811 } WINDOWINFO,*PWINDOWINFO,*LPWINDOWINFO;
2812 typedef struct tagLASTINPUTINFO {
2813 	UINT cbSize;
2814 	DWORD dwTime;
2815 } LASTINPUTINFO,*PLASTINPUTINFO;
2816 typedef struct tagMONITORINFO {
2817 	DWORD cbSize;
2818 	RECT rcMonitor;
2819 	RECT rcWork;
2820 	DWORD dwFlags;
2821 } MONITORINFO,*LPMONITORINFO;
2822 #define CCHDEVICENAME 32
2823 
2824 #ifdef __cplusplus
2825 typedef struct tagMONITORINFOEXA : public tagMONITORINFO
2826 {
2827     CHAR    szDevice[CCHDEVICENAME];
2828 } MONITORINFOEXA, *LPMONITORINFOEXA;
2829 typedef struct tagMONITORINFOEXW : public tagMONITORINFO
2830 {
2831     WCHAR   szDevice[CCHDEVICENAME];
2832 } MONITORINFOEXW, *LPMONITORINFOEXW;
2833 #else
2834 
2835 typedef struct tagMONITORINFOEXA {
2836 	DWORD	cbSize;
2837 	RECT	rcMonitor;
2838 	RECT	rcWork;
2839 	DWORD	dwFlags;
2840 	CHAR	szDevice[CCHDEVICENAME];
2841 } MONITORINFOEXA,*LPMONITORINFOEXA;
2842 typedef struct tagMONITORINFOEXW {
2843 	DWORD	cbSize;
2844 	RECT	rcMonitor;
2845 	RECT	rcWork;
2846 	DWORD	dwFlags;
2847 	WCHAR	szDevice[CCHDEVICENAME];
2848 } MONITORINFOEXW,*LPMONITORINFOEXW;
2849 #endif /* __cplusplus */
2850 
2851 typedef struct tagKBDLLHOOKSTRUCT {
2852 	DWORD vkCode;
2853 	DWORD scanCode;
2854 	DWORD flags;
2855 	DWORD time;
2856 	DWORD dwExtraInfo;
2857 } KBDLLHOOKSTRUCT,*LPKBDLLHOOKSTRUCT,*PKBDLLHOOKSTRUCT;
2858 
2859 typedef struct {
2860 	POINT pt;
2861 	DWORD mouseData;
2862 	DWORD flags;
2863 	DWORD time;
2864 	ULONG_PTR dwExtraInfo;
2865 } MSLLHOOKSTRUCT, *PMSLLHOOKSTRUCT;
2866 
2867 typedef struct tagMOUSEINPUT {
2868   LONG dx;
2869   LONG dy;
2870   DWORD mouseData;
2871   DWORD dwFlags;
2872   DWORD time;
2873   ULONG_PTR dwExtraInfo;
2874 } MOUSEINPUT,*PMOUSEINPUT;
2875 typedef struct tagKEYBDINPUT {
2876   WORD wVk;
2877   WORD wScan;
2878   DWORD dwFlags;
2879   DWORD time;
2880   ULONG_PTR dwExtraInfo;
2881 } KEYBDINPUT,*PKEYBDINPUT;
2882 typedef struct tagHARDWAREINPUT {
2883   DWORD uMsg;
2884   WORD wParamL;
2885   WORD wParamH;
2886 } HARDWAREINPUT,*PHARDWAREINPUT;
2887 typedef struct tagINPUT {
2888   DWORD type;
2889   _ANONYMOUS_UNION union {
2890 		MOUSEINPUT mi;
2891 		KEYBDINPUT ki;
2892 		HARDWAREINPUT hi;
2893   } DUMMYUNIONNAME;
2894 } INPUT,*PINPUT,*LPINPUT;
2895 
2896 #define AnsiToOem CharToOemA
2897 #define OemToAnsi OemToCharA
2898 #define AnsiToOemBuff CharToOemBuffA
2899 #define OemToAnsiBuff OemToCharBuffA
2900 #define AnsiUpper CharUpperA
2901 #define AnsiUpperBuff CharUpperBuffA
2902 #define AnsiLower CharLowerA
2903 #define AnsiLowerBuff CharLowerBuffA
2904 #define AnsiNext CharNextA
2905 #define AnsiPrev CharPrevA
2906 #define MAKELPARAM(l,h) ((LPARAM)MAKELONG(l,h))
2907 #define MAKEWPARAM(l,h) ((WPARAM)MAKELONG(l,h))
2908 #define MAKELRESULT(l,h) ((LRESULT)MAKELONG(l,h))
2909 #define POINTSTOPOINT(p,ps) { \
2910   (p).x=(LONG)(SHORT)LOWORD(*(LONG*)&ps); \
2911   (p).y=(LONG)(SHORT)HIWORD(*(LONG*)&ps); \
2912 }
2913 /* NOTE: MSDN states POINTTOPOINTS returns the POINTS structure but usage
2914  * proves otherswise.  Removing the cast allows the user the choice to cast
2915  * the result to the POINTS structure themselves or use the long that is
2916  * returned instead.  See Issues ticket #1402 for discussion.
2917 #define POINTTOPOINTS(p) ((POINTS)MAKELONG((short)(p).x,(short)(p).y))
2918  */
2919 #define POINTTOPOINTS(p) (MAKELONG((short)(p).x,(short)(p).y))
2920 
2921 #ifndef _LPCGUID_DEFINED
2922 #define _LPCGUID_DEFINED
2923 typedef const GUID *LPCGUID;
2924 #endif
2925 
2926 WINUSERAPI HKL WINAPI ActivateKeyboardLayout(HKL,UINT);
2927 WINUSERAPI BOOL WINAPI AdjustWindowRect(LPRECT,DWORD,BOOL);
2928 WINUSERAPI BOOL WINAPI AdjustWindowRectEx(LPRECT,DWORD,BOOL,DWORD);
2929 
2930 WINUSERAPI BOOL WINAPI AnyPopup(void);
2931 WINUSERAPI BOOL WINAPI AppendMenuA(HMENU,UINT,UINT_PTR,LPCSTR);
2932 WINUSERAPI BOOL WINAPI AppendMenuW(HMENU,UINT,UINT_PTR,LPCWSTR);
2933 WINUSERAPI UINT WINAPI ArrangeIconicWindows(HWND);
2934 WINUSERAPI BOOL WINAPI AttachThreadInput(DWORD,DWORD,BOOL);
2935 WINUSERAPI HDWP WINAPI BeginDeferWindowPos(int);
2936 WINUSERAPI HDC WINAPI BeginPaint(HWND,LPPAINTSTRUCT);
2937 WINUSERAPI BOOL WINAPI BringWindowToTop(HWND);
2938 WINUSERAPI long WINAPI BroadcastSystemMessage(DWORD,LPDWORD,UINT,WPARAM,LPARAM);
2939 WINUSERAPI long WINAPI BroadcastSystemMessageA(DWORD,LPDWORD,UINT,WPARAM,LPARAM);
2940 WINUSERAPI long WINAPI BroadcastSystemMessageW(DWORD,LPDWORD,UINT,WPARAM,LPARAM);
2941 
2942 WINUSERAPI BOOL WINAPI CallMsgFilterA(LPMSG,INT);
2943 WINUSERAPI BOOL WINAPI CallMsgFilterW(LPMSG,INT);
2944 WINUSERAPI LRESULT WINAPI CallNextHookEx(HHOOK,int,WPARAM,LPARAM);
2945 WINUSERAPI LRESULT WINAPI CallWindowProcA(WNDPROC,HWND,UINT,WPARAM,LPARAM);
2946 WINUSERAPI LRESULT WINAPI CallWindowProcW(WNDPROC,HWND,UINT,WPARAM,LPARAM);
2947 WINUSERAPI WORD WINAPI CascadeWindows(HWND,UINT,LPCRECT,UINT,const HWND*);
2948 WINUSERAPI BOOL WINAPI ChangeClipboardChain(HWND,HWND);
2949 
2950 #ifndef NOGDI
2951 WINUSERAPI LONG WINAPI ChangeDisplaySettingsA(PDEVMODEA,DWORD);
2952 WINUSERAPI LONG WINAPI ChangeDisplaySettingsW(PDEVMODEW,DWORD);
2953 WINUSERAPI LONG WINAPI ChangeDisplaySettingsExA(LPCSTR,LPDEVMODEA,HWND,DWORD,LPVOID);
2954 WINUSERAPI LONG WINAPI ChangeDisplaySettingsExW(LPCWSTR,LPDEVMODEW,HWND,DWORD,LPVOID);
2955 #endif
2956 
2957 WINUSERAPI BOOL WINAPI ChangeMenuA(HMENU,UINT,LPCSTR,UINT,UINT);
2958 WINUSERAPI BOOL WINAPI ChangeMenuW(HMENU,UINT,LPCWSTR,UINT,UINT);
2959 WINUSERAPI LPSTR WINAPI CharLowerA(LPSTR);
2960 WINUSERAPI LPWSTR WINAPI CharLowerW(LPWSTR);
2961 WINUSERAPI DWORD WINAPI CharLowerBuffA(LPSTR,DWORD);
2962 WINUSERAPI DWORD WINAPI CharLowerBuffW(LPWSTR,DWORD);
2963 WINUSERAPI LPSTR WINAPI CharNextA(LPCSTR);
2964 WINUSERAPI LPWSTR WINAPI CharNextW(LPCWSTR);
2965 WINUSERAPI LPSTR WINAPI CharNextExA(WORD,LPCSTR,DWORD);
2966 WINUSERAPI LPSTR WINAPI CharPrevA(LPCSTR,LPCSTR);
2967 WINUSERAPI LPWSTR WINAPI CharPrevW(LPCWSTR,LPCWSTR);
2968 WINUSERAPI LPSTR WINAPI CharPrevExA(WORD,LPCSTR,LPCSTR,DWORD);
2969 WINUSERAPI BOOL WINAPI CharToOemA(LPCSTR,LPSTR);
2970 WINUSERAPI BOOL WINAPI CharToOemW(LPCWSTR,LPSTR);
2971 WINUSERAPI BOOL WINAPI CharToOemBuffA(LPCSTR,LPSTR,DWORD);
2972 WINUSERAPI BOOL WINAPI CharToOemBuffW(LPCWSTR,LPSTR,DWORD);
2973 WINUSERAPI LPSTR WINAPI CharUpperA(LPSTR);
2974 WINUSERAPI LPWSTR WINAPI CharUpperW(LPWSTR);
2975 WINUSERAPI DWORD WINAPI CharUpperBuffA(LPSTR,DWORD);
2976 WINUSERAPI DWORD WINAPI CharUpperBuffW(LPWSTR,DWORD);
2977 WINUSERAPI BOOL WINAPI CheckDlgButton(HWND,int,UINT);
2978 WINUSERAPI DWORD WINAPI CheckMenuItem(HMENU,UINT,UINT);
2979 WINUSERAPI BOOL WINAPI CheckMenuRadioItem(HMENU,UINT,UINT,UINT,UINT);
2980 WINUSERAPI BOOL WINAPI CheckRadioButton(HWND,int,int,int);
2981 WINUSERAPI HWND WINAPI ChildWindowFromPoint(HWND,POINT);
2982 WINUSERAPI HWND WINAPI ChildWindowFromPointEx(HWND,POINT,UINT);
2983 WINUSERAPI BOOL WINAPI ClientToScreen(HWND,LPPOINT);
2984 WINUSERAPI BOOL WINAPI ClipCursor(LPCRECT);
2985 WINUSERAPI BOOL WINAPI CloseClipboard(void);
2986 WINUSERAPI BOOL WINAPI CloseDesktop(HDESK);
2987 WINUSERAPI BOOL WINAPI CloseWindow(HWND);
2988 WINUSERAPI BOOL WINAPI CloseWindowStation(HWINSTA);
2989 WINUSERAPI int WINAPI CopyAcceleratorTableA(HACCEL,LPACCEL,int);
2990 WINUSERAPI int WINAPI CopyAcceleratorTableW(HACCEL,LPACCEL,int);
2991 #define CopyCursor(c) ((HCURSOR)CopyIcon((HICON)(c)))
2992 WINUSERAPI HICON WINAPI CopyIcon(HICON);
2993 WINUSERAPI HANDLE WINAPI CopyImage(HANDLE,UINT,int,int,UINT);
2994 WINUSERAPI BOOL WINAPI CopyRect(LPRECT,LPCRECT);
2995 WINUSERAPI int WINAPI CountClipboardFormats(void);
2996 WINUSERAPI HACCEL WINAPI CreateAcceleratorTableA(LPACCEL,int);
2997 WINUSERAPI HACCEL WINAPI CreateAcceleratorTableW(LPACCEL,int);
2998 WINUSERAPI BOOL WINAPI CreateCaret(HWND,HBITMAP,int,int);
2999 WINUSERAPI HCURSOR WINAPI CreateCursor(HINSTANCE,int,int,int,int,PCVOID,PCVOID);
3000 
3001 #ifndef NOGDI
3002 WINUSERAPI HDESK WINAPI CreateDesktopA(LPCSTR,LPCSTR,LPDEVMODEA,DWORD,ACCESS_MASK,LPSECURITY_ATTRIBUTES);
3003 WINUSERAPI HDESK WINAPI CreateDesktopW(LPCWSTR,LPCWSTR,LPDEVMODEW,DWORD,ACCESS_MASK,LPSECURITY_ATTRIBUTES);
3004 #endif
3005 
3006 #define CreateDialogA(h,n,w,f) CreateDialogParamA(h,n,w,f,0)
3007 #define CreateDialogW(h,n,w,f) CreateDialogParamW(h,n,w,f,0)
3008 #define CreateDialogIndirectA(h,t,w,f) CreateDialogIndirectParamA(h,t,w,f,0)
3009 #define CreateDialogIndirectW(h,t,w,f) CreateDialogIndirectParamW(h,t,w,f,0)
3010 WINUSERAPI HWND WINAPI CreateDialogIndirectParamA(HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM);
3011 WINUSERAPI HWND WINAPI CreateDialogIndirectParamW(HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM);
3012 WINUSERAPI HWND WINAPI CreateDialogParamA(HINSTANCE,LPCSTR,HWND,DLGPROC,LPARAM);
3013 WINUSERAPI HWND WINAPI CreateDialogParamW(HINSTANCE,LPCWSTR,HWND,DLGPROC,LPARAM);
3014 WINUSERAPI HICON WINAPI CreateIcon(HINSTANCE,int,int,BYTE,BYTE,const BYTE*,const BYTE*);
3015 WINUSERAPI HICON WINAPI CreateIconFromResource(PBYTE,DWORD,BOOL,DWORD);
3016 WINUSERAPI HICON WINAPI CreateIconFromResourceEx(PBYTE,DWORD,BOOL,DWORD,int,int,UINT);
3017 WINUSERAPI HICON WINAPI CreateIconIndirect(PICONINFO);
3018 WINUSERAPI HWND WINAPI CreateMDIWindowA(LPCSTR,LPCSTR,DWORD,int,int,int,int,HWND,HINSTANCE,LPARAM);
3019 WINUSERAPI HWND WINAPI CreateMDIWindowW(LPCWSTR,LPCWSTR,DWORD,int,int,int,int,HWND,HINSTANCE,LPARAM);
3020 WINUSERAPI HMENU WINAPI CreateMenu(void);
3021 WINUSERAPI HMENU WINAPI CreatePopupMenu(void);
3022 #define CreateWindowA(a,b,c,d,e,f,g,h,i,j,k) CreateWindowExA(0,a,b,c,d,e,f,g,h,i,j,k)
3023 #define CreateWindowW(a,b,c,d,e,f,g,h,i,j,k) CreateWindowExW(0,a,b,c,d,e,f,g,h,i,j,k)
3024 WINUSERAPI HWND WINAPI CreateWindowExA(DWORD,LPCSTR,LPCSTR,DWORD,int,int,int,int,HWND,HMENU,HINSTANCE,LPVOID);
3025 WINUSERAPI HWND WINAPI CreateWindowExW(DWORD,LPCWSTR,LPCWSTR,DWORD,int,int,int,int,HWND,HMENU,HINSTANCE,LPVOID);
3026 WINUSERAPI HWINSTA WINAPI CreateWindowStationA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
3027 WINUSERAPI HWINSTA WINAPI CreateWindowStationW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
3028 WINUSERAPI LRESULT WINAPI DefDlgProcA(HWND,UINT,WPARAM,LPARAM);
3029 WINUSERAPI LRESULT WINAPI DefDlgProcW(HWND,UINT,WPARAM,LPARAM);
3030 WINUSERAPI HDWP WINAPI DeferWindowPos(HDWP,HWND,HWND,int,int,int,int,UINT);
3031 WINUSERAPI LRESULT WINAPI DefFrameProcA(HWND,HWND,UINT,WPARAM,LPARAM);
3032 WINUSERAPI LRESULT WINAPI DefFrameProcW(HWND,HWND,UINT,WPARAM,LPARAM);
3033 #define DefHookProc(c,p,lp,h) CallNextHookEx((HHOOK)*h,c,p,lp)
3034 WINUSERAPI LRESULT WINAPI DefMDIChildProcA(HWND,UINT,WPARAM,LPARAM);
3035 WINUSERAPI LRESULT WINAPI DefMDIChildProcW(HWND,UINT,WPARAM,LPARAM);
3036 
3037 WINUSERAPI LRESULT WINAPI DefWindowProcA(HWND,UINT,WPARAM,LPARAM);
3038 WINUSERAPI LRESULT WINAPI DefWindowProcW(HWND,UINT,WPARAM,LPARAM);
3039 WINUSERAPI BOOL WINAPI DeleteMenu(HMENU,UINT,UINT);
3040 WINUSERAPI BOOL WINAPI DeregisterShellHookWindow(HWND);
3041 WINUSERAPI BOOL WINAPI DestroyAcceleratorTable(HACCEL);
3042 WINUSERAPI BOOL WINAPI DestroyCaret(void);
3043 WINUSERAPI BOOL WINAPI DestroyCursor(HCURSOR);
3044 WINUSERAPI BOOL WINAPI DestroyIcon(HICON);
3045 WINUSERAPI BOOL WINAPI DestroyMenu(HMENU);
3046 WINUSERAPI BOOL WINAPI DestroyWindow(HWND);
3047 #define DialogBoxA(i,t,p,f) DialogBoxParamA(i,t,p,f,0)
3048 #define DialogBoxW(i,t,p,f) DialogBoxParamW(i,t,p,f,0)
3049 #define DialogBoxIndirectA(i,t,p,f) DialogBoxIndirectParamA(i,t,p,f,0)
3050 #define DialogBoxIndirectW(i,t,p,f) DialogBoxIndirectParamW(i,t,p,f,0)
3051 WINUSERAPI int WINAPI DialogBoxIndirectParamA(HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM);
3052 WINUSERAPI int WINAPI DialogBoxIndirectParamW(HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM);
3053 
3054 #ifdef _WIN32_WCE
3055 extern int DialogBoxParamA(HINSTANCE,LPCSTR,HWND,DLGPROC,LPARAM);
3056 extern int DialogBoxParamW(HINSTANCE,LPCWSTR,HWND,DLGPROC,LPARAM);
3057 #else
3058 WINUSERAPI int WINAPI DialogBoxParamA(HINSTANCE,LPCSTR,HWND,DLGPROC,LPARAM);
3059 WINUSERAPI int WINAPI DialogBoxParamW(HINSTANCE,LPCWSTR,HWND,DLGPROC,LPARAM);
3060 #endif
3061 
3062 WINUSERAPI LONG WINAPI DispatchMessageA(const MSG*);
3063 WINUSERAPI LONG WINAPI DispatchMessageW(const MSG*);
3064 WINUSERAPI int WINAPI DlgDirListA(HWND,LPSTR,int,int,UINT);
3065 WINUSERAPI int WINAPI DlgDirListW(HWND,LPWSTR,int,int,UINT);
3066 WINUSERAPI int WINAPI DlgDirListComboBoxA(HWND,LPSTR,int,int,UINT);
3067 WINUSERAPI int WINAPI DlgDirListComboBoxW(HWND,LPWSTR,int,int,UINT);
3068 WINUSERAPI BOOL WINAPI DlgDirSelectComboBoxExA(HWND,LPSTR,int,int);
3069 WINUSERAPI BOOL WINAPI DlgDirSelectComboBoxExW(HWND,LPWSTR,int,int);
3070 WINUSERAPI BOOL WINAPI DlgDirSelectExA(HWND,LPSTR,int,int);
3071 WINUSERAPI BOOL WINAPI DlgDirSelectExW(HWND,LPWSTR,int,int);
3072 WINUSERAPI BOOL WINAPI DragDetect(HWND,POINT);
3073 WINUSERAPI DWORD WINAPI DragObject(HWND,HWND,UINT,DWORD,HCURSOR);
3074 WINUSERAPI BOOL WINAPI DrawAnimatedRects(HWND,int,LPCRECT,LPCRECT);
3075 WINUSERAPI BOOL WINAPI DrawCaption(HWND,HDC,LPCRECT,UINT);
3076 WINUSERAPI BOOL WINAPI DrawEdge(HDC,LPRECT,UINT,UINT);
3077 WINUSERAPI BOOL WINAPI DrawFocusRect(HDC,LPCRECT);
3078 WINUSERAPI BOOL WINAPI DrawFrameControl(HDC,LPRECT,UINT,UINT);
3079 WINUSERAPI BOOL WINAPI DrawIcon(HDC,int,int,HICON);
3080 WINUSERAPI BOOL WINAPI DrawIconEx(HDC,int,int,HICON,int,int,UINT,HBRUSH,UINT);
3081 WINUSERAPI BOOL WINAPI DrawMenuBar(HWND);
3082 WINUSERAPI BOOL WINAPI DrawStateA(HDC,HBRUSH,DRAWSTATEPROC,LPARAM,WPARAM,int,int,int,int,UINT);
3083 WINUSERAPI BOOL WINAPI DrawStateW(HDC,HBRUSH,DRAWSTATEPROC,LPARAM,WPARAM,int,int,int,int,UINT);
3084 WINUSERAPI int WINAPI DrawTextA(HDC,LPCSTR,int,LPRECT,UINT);
3085 WINUSERAPI int WINAPI DrawTextW(HDC,LPCWSTR,int,LPRECT,UINT);
3086 WINUSERAPI int WINAPI DrawTextExA(HDC,LPSTR,int,LPRECT,UINT,LPDRAWTEXTPARAMS);
3087 WINUSERAPI int WINAPI DrawTextExW(HDC,LPWSTR,int,LPRECT,UINT,LPDRAWTEXTPARAMS);
3088 WINUSERAPI BOOL WINAPI EmptyClipboard(void);
3089 WINUSERAPI BOOL WINAPI EnableMenuItem(HMENU,UINT,UINT);
3090 WINUSERAPI BOOL WINAPI EnableScrollBar(HWND,UINT,UINT);
3091 WINUSERAPI BOOL WINAPI EnableWindow(HWND,BOOL);
3092 WINUSERAPI BOOL WINAPI EndDeferWindowPos(HDWP);
3093 WINUSERAPI BOOL WINAPI EndDialog(HWND,int);
3094 WINUSERAPI BOOL WINAPI EndMenu(void);
3095 WINUSERAPI BOOL WINAPI EndPaint(HWND,const PAINTSTRUCT*);
3096 
3097 WINUSERAPI BOOL WINAPI EnumChildWindows(HWND,ENUMWINDOWSPROC,LPARAM);
3098 WINUSERAPI UINT WINAPI EnumClipboardFormats(UINT);
3099 WINUSERAPI BOOL WINAPI EnumDesktopsA(HWINSTA,DESKTOPENUMPROCA,LPARAM);
3100 WINUSERAPI BOOL WINAPI EnumDesktopsW(HWINSTA,DESKTOPENUMPROCW,LPARAM);
3101 WINUSERAPI BOOL WINAPI EnumDesktopWindows(HDESK,ENUMWINDOWSPROC,LPARAM);
3102 WINUSERAPI BOOL WINAPI EnumDisplayMonitors(HDC,LPCRECT,MONITORENUMPROC,LPARAM);
3103 
3104 #ifndef NOGDI
3105 WINUSERAPI BOOL WINAPI EnumDisplaySettingsA(LPCSTR,DWORD,PDEVMODEA);
3106 WINUSERAPI BOOL WINAPI EnumDisplaySettingsW(LPCWSTR,DWORD,PDEVMODEW);
3107 
3108 WINUSERAPI BOOL WINAPI EnumDisplayDevicesA(LPCSTR,DWORD,PDISPLAY_DEVICEA,DWORD);
3109 WINUSERAPI BOOL WINAPI EnumDisplayDevicesW(LPCWSTR,DWORD,PDISPLAY_DEVICEW,DWORD);
3110 #endif
3111 
3112 WINUSERAPI int WINAPI EnumPropsA(HWND,PROPENUMPROCA);
3113 WINUSERAPI int WINAPI EnumPropsW(HWND,PROPENUMPROCW);
3114 WINUSERAPI int WINAPI EnumPropsExA(HWND,PROPENUMPROCEXA,LPARAM);
3115 WINUSERAPI int WINAPI EnumPropsExW(HWND,PROPENUMPROCEXW,LPARAM);
3116 #define EnumTaskWindows(h,f,p) EnumThreadWindows((DWORD)h,f,p)
3117 WINUSERAPI BOOL WINAPI EnumThreadWindows(DWORD,WNDENUMPROC,LPARAM);
3118 WINUSERAPI BOOL WINAPI EnumWindows(WNDENUMPROC,LPARAM);
3119 WINUSERAPI BOOL WINAPI EnumWindowStationsA(WINSTAENUMPROCA,LPARAM);
3120 WINUSERAPI BOOL WINAPI EnumWindowStationsW(WINSTAENUMPROCW,LPARAM);
3121 WINUSERAPI BOOL WINAPI EqualRect(LPCRECT,LPCRECT);
3122 #define ExitWindows(r,c) ExitWindowsEx(EWX_LOGOFF,0)
3123 WINUSERAPI BOOL WINAPI ExitWindowsEx(UINT,DWORD);
3124 WINUSERAPI HWND WINAPI FindWindowA(LPCSTR,LPCSTR);
3125 WINUSERAPI HWND WINAPI FindWindowExA(HWND,HWND,LPCSTR,LPCSTR);
3126 WINUSERAPI HWND WINAPI FindWindowExW(HWND,HWND,LPCWSTR,LPCWSTR);
3127 WINUSERAPI HWND WINAPI FindWindowW(LPCWSTR,LPCWSTR);
3128 WINUSERAPI BOOL WINAPI FlashWindow(HWND,BOOL);
3129 
3130 int WINAPI FrameRect(HDC,LPCRECT,HBRUSH);
3131 WINUSERAPI BOOL WINAPI FrameRgn(HDC,HRGN,HBRUSH,int,int);
3132 WINUSERAPI HWND WINAPI GetActiveWindow(void);
3133 WINUSERAPI HWND WINAPI GetAncestor(HWND,UINT);
3134 WINUSERAPI SHORT WINAPI GetAsyncKeyState(int);
3135 WINUSERAPI HWND WINAPI GetCapture(void);
3136 WINUSERAPI UINT WINAPI GetCaretBlinkTime(void);
3137 WINUSERAPI BOOL WINAPI GetCaretPos(LPPOINT);
3138 WINUSERAPI BOOL WINAPI GetClassInfoA(HINSTANCE,LPCSTR,LPWNDCLASSA);
3139 WINUSERAPI BOOL WINAPI GetClassInfoExA(HINSTANCE,LPCSTR,LPWNDCLASSEXA);
3140 WINUSERAPI BOOL WINAPI GetClassInfoW(HINSTANCE,LPCWSTR,LPWNDCLASSW);
3141 WINUSERAPI BOOL WINAPI GetClassInfoExW(HINSTANCE,LPCWSTR,LPWNDCLASSEXW);
3142 WINUSERAPI DWORD WINAPI GetClassLongA(HWND,int);
3143 WINUSERAPI DWORD WINAPI GetClassLongW(HWND,int);
3144 
3145 #ifdef _WIN64
3146 WINUSERAPI ULONG_PTR WINAPI GetClassLongPtrA(HWND,int);
3147 WINUSERAPI ULONG_PTR WINAPI GetClassLongPtrW(HWND,int);
3148 #else
3149 #define GetClassLongPtrA GetClassLongA
3150 #define GetClassLongPtrW GetClassLongW
3151 #endif
3152 
3153 WINUSERAPI int WINAPI GetClassNameA(HWND,LPSTR,int);
3154 WINUSERAPI int WINAPI GetClassNameW(HWND,LPWSTR,int);
3155 WINUSERAPI WORD WINAPI GetClassWord(HWND,int);
3156 WINUSERAPI BOOL WINAPI GetClientRect(HWND,LPRECT);
3157 WINUSERAPI HANDLE WINAPI GetClipboardData(UINT);
3158 WINUSERAPI int WINAPI GetClipboardFormatNameA(UINT,LPSTR,int);
3159 WINUSERAPI int WINAPI GetClipboardFormatNameW(UINT,LPWSTR,int);
3160 WINUSERAPI HWND WINAPI GetClipboardOwner(void);
3161 
3162 HWND WINAPI GetClipboardViewer(void);
3163 WINUSERAPI BOOL WINAPI GetClipCursor(LPRECT);
3164 WINUSERAPI BOOL WINAPI GetCursorPos(LPPOINT);
3165 WINUSERAPI HDC WINAPI GetDC(HWND);
3166 WINUSERAPI HDC WINAPI GetDCEx(HWND,HRGN,DWORD);
3167 WINUSERAPI HWND WINAPI GetDesktopWindow(void);
3168 WINUSERAPI long WINAPI GetDialogBaseUnits(void);
3169 WINUSERAPI int WINAPI GetDlgCtrlID(HWND);
3170 WINUSERAPI HWND WINAPI GetDlgItem(HWND,int);
3171 WINUSERAPI UINT WINAPI GetDlgItemInt(HWND,int,PBOOL,BOOL);
3172 WINUSERAPI UINT WINAPI GetDlgItemTextA(HWND,int,LPSTR,int);
3173 WINUSERAPI UINT WINAPI GetDlgItemTextW(HWND,int,LPWSTR,int);
3174 WINUSERAPI UINT WINAPI GetDoubleClickTime(void);
3175 WINUSERAPI HWND WINAPI GetFocus(void);
3176 WINUSERAPI HWND WINAPI GetForegroundWindow(void);
3177 
3178 WINUSERAPI BOOL WINAPI GetIconInfo(HICON,PICONINFO);
3179 WINUSERAPI BOOL WINAPI GetInputState(void);
3180 WINUSERAPI UINT WINAPI GetKBCodePage(void);
3181 WINUSERAPI HKL WINAPI GetKeyboardLayout(DWORD);
3182 WINUSERAPI UINT WINAPI GetKeyboardLayoutList(int,HKL*);
3183 WINUSERAPI BOOL WINAPI GetKeyboardLayoutNameA(LPSTR);
3184 WINUSERAPI BOOL WINAPI GetKeyboardLayoutNameW(LPWSTR);
3185 WINUSERAPI BOOL WINAPI GetKeyboardState(PBYTE);
3186 WINUSERAPI int WINAPI GetKeyboardType(int);
3187 WINUSERAPI int WINAPI GetKeyNameTextA(LONG,LPSTR,int);
3188 WINUSERAPI int WINAPI GetKeyNameTextW(LONG,LPWSTR,int);
3189 WINUSERAPI SHORT WINAPI GetKeyState(int);
3190 WINUSERAPI HWND WINAPI GetLastActivePopup(HWND);
3191 WINUSERAPI HMENU WINAPI GetMenu(HWND);
3192 WINUSERAPI LONG WINAPI GetMenuCheckMarkDimensions(void);
3193 WINUSERAPI DWORD WINAPI GetMenuContextHelpId(HMENU);
3194 WINUSERAPI UINT WINAPI GetMenuDefaultItem(HMENU,UINT,UINT);
3195 WINUSERAPI int WINAPI GetMenuItemCount(HMENU);
3196 WINUSERAPI UINT WINAPI GetMenuItemID(HMENU,int);
3197 WINUSERAPI BOOL WINAPI GetMenuItemInfoA(HMENU,UINT,BOOL,LPMENUITEMINFOA);
3198 WINUSERAPI BOOL WINAPI GetMenuItemInfoW(HMENU,UINT,BOOL,LPMENUITEMINFOW);
3199 WINUSERAPI BOOL WINAPI GetMenuItemRect(HWND,HMENU,UINT,LPRECT);
3200 WINUSERAPI UINT WINAPI GetMenuState(HMENU,UINT,UINT);
3201 WINUSERAPI int WINAPI GetMenuStringA(HMENU,UINT,LPSTR,int,UINT);
3202 WINUSERAPI int WINAPI GetMenuStringW(HMENU,UINT,LPWSTR,int,UINT);
3203 WINUSERAPI BOOL WINAPI GetMessageA(LPMSG,HWND,UINT,UINT);
3204 WINUSERAPI BOOL WINAPI GetMessageW(LPMSG,HWND,UINT,UINT);
3205 WINUSERAPI LONG WINAPI GetMessageExtraInfo(void);
3206 WINUSERAPI DWORD WINAPI GetMessagePos(void);
3207 WINUSERAPI LONG WINAPI GetMessageTime(void);
3208 
3209 WINUSERAPI HWND WINAPI GetNextDlgGroupItem(HWND,HWND,BOOL);
3210 WINUSERAPI HWND WINAPI GetNextDlgTabItem(HWND,HWND,BOOL);
3211 #define GetNextWindow(h,c) GetWindow(h,c)
3212 WINUSERAPI HWND WINAPI GetOpenClipboardWindow(void);
3213 WINUSERAPI HWND WINAPI GetParent(HWND);
3214 WINUSERAPI int WINAPI GetPriorityClipboardFormat(UINT*,int);
3215 WINUSERAPI HANDLE WINAPI GetPropA(HWND,LPCSTR);
3216 WINUSERAPI HANDLE WINAPI GetPropW(HWND,LPCWSTR);
3217 
3218 WINUSERAPI DWORD WINAPI GetQueueStatus(UINT);
3219 WINUSERAPI BOOL WINAPI GetScrollInfo(HWND,int,LPSCROLLINFO);
3220 WINUSERAPI int WINAPI GetScrollPos(HWND,int);
3221 WINUSERAPI BOOL WINAPI GetScrollRange(HWND,int,LPINT,LPINT);
3222 
3223 WINUSERAPI HMENU WINAPI GetSubMenu(HMENU,int);
3224 WINUSERAPI DWORD WINAPI GetSysColor(int);
3225 WINUSERAPI HBRUSH WINAPI GetSysColorBrush(int);
3226 #define GetSysModalWindow() (NULL)
3227 WINUSERAPI HMENU WINAPI GetSystemMenu(HWND,BOOL);
3228 WINUSERAPI int WINAPI GetSystemMetrics(int);
3229 WINUSERAPI DWORD WINAPI GetTabbedTextExtentA(HDC,LPCSTR,int,int,LPINT);
3230 WINUSERAPI DWORD WINAPI GetTabbedTextExtentW(HDC,LPCWSTR,int,int,LPINT);
3231 WINUSERAPI LONG WINAPI GetWindowLongA(HWND,int);
3232 WINUSERAPI LONG WINAPI GetWindowLongW(HWND,int);
3233 
3234 #ifdef _WIN64
3235 WINUSERAPI LONG_PTR WINAPI GetWindowLongPtrA(HWND,int);
3236 WINUSERAPI LONG_PTR WINAPI GetWindowLongPtrW(HWND,int);
3237 #else
3238 #define GetWindowLongPtrA GetWindowLongA
3239 #define GetWindowLongPtrW GetWindowLongW
3240 #endif
3241 
3242 WINUSERAPI HDESK WINAPI GetThreadDesktop(DWORD);
3243 WINUSERAPI HWND WINAPI GetTopWindow(HWND);
3244 WINUSERAPI BOOL WINAPI GetUpdateRect(HWND,LPRECT,BOOL);
3245 WINUSERAPI int WINAPI GetUpdateRgn(HWND,HRGN,BOOL);
3246 WINUSERAPI BOOL WINAPI GetUserObjectInformationA(HANDLE,int,PVOID,DWORD,PDWORD);
3247 WINUSERAPI BOOL WINAPI GetUserObjectInformationW(HANDLE,int,PVOID,DWORD,PDWORD);
3248 WINUSERAPI BOOL WINAPI GetUserObjectSecurity(HANDLE,PSECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD);
3249 WINUSERAPI HWND WINAPI GetWindow(HWND,UINT);
3250 WINUSERAPI DWORD WINAPI GetWindowContextHelpId(HWND);
3251 WINUSERAPI HDC WINAPI GetWindowDC(HWND);
3252 WINUSERAPI BOOL WINAPI GetWindowPlacement(HWND,WINDOWPLACEMENT*);
3253 WINUSERAPI BOOL WINAPI GetWindowRect(HWND,LPRECT);
3254 WINUSERAPI int WINAPI GetWindowRgn(HWND,HRGN);
3255 #define GetWindowTask(hWnd) ((HANDLE)GetWindowThreadProcessId(hWnd, NULL))
3256 WINUSERAPI int WINAPI GetWindowTextA(HWND,LPSTR,int);
3257 WINUSERAPI int WINAPI GetWindowTextLengthA(HWND);
3258 WINUSERAPI int WINAPI GetWindowTextLengthW(HWND);
3259 WINUSERAPI int WINAPI GetWindowTextW(HWND,LPWSTR,int);
3260 WINUSERAPI WORD WINAPI GetWindowWord(HWND,int);
3261 WINUSERAPI BOOL WINAPI GetAltTabInfoA(HWND,int,PALTTABINFO,LPSTR,UINT);
3262 WINUSERAPI BOOL WINAPI GetAltTabInfoW(HWND,int,PALTTABINFO,LPWSTR,UINT);
3263 WINUSERAPI BOOL WINAPI GetComboBoxInfo(HWND,PCOMBOBOXINFO);
3264 WINUSERAPI BOOL WINAPI GetCursorInfo(PCURSORINFO);
3265 
3266 WINUSERAPI BOOL WINAPI GetLastInputInfo(PLASTINPUTINFO);
3267 WINUSERAPI DWORD WINAPI GetListBoxInfo(HWND);
3268 WINUSERAPI BOOL WINAPI GetMenuBarInfo(HWND,LONG,LONG,PMENUBARINFO);
3269 WINUSERAPI BOOL WINAPI GetMenuInfo(HMENU,LPMENUINFO);
3270 
3271 WINUSERAPI BOOL WINAPI GetScrollBarInfo(HWND,LONG,PSCROLLBARINFO);
3272 
3273 WINUSERAPI BOOL WINAPI GetWindowInfo(HWND,PWINDOWINFO);
3274 WINUSERAPI BOOL WINAPI GetMonitorInfoA(HMONITOR,LPMONITORINFO);
3275 WINUSERAPI BOOL WINAPI GetMonitorInfoW(HMONITOR,LPMONITORINFO);
3276 WINUSERAPI UINT WINAPI GetWindowModuleFileNameA(HWND,LPSTR,UINT);
3277 WINUSERAPI UINT WINAPI GetWindowModuleFileNameW(HWND,LPWSTR,UINT);
3278 WINUSERAPI BOOL WINAPI GrayStringA(HDC,HBRUSH,GRAYSTRINGPROC,LPARAM,int,int,int,int,int);
3279 WINUSERAPI BOOL WINAPI GrayStringW(HDC,HBRUSH,GRAYSTRINGPROC,LPARAM,int,int,int,int,int);
3280 WINUSERAPI BOOL WINAPI HideCaret(HWND);
3281 WINUSERAPI BOOL WINAPI HiliteMenuItem(HWND,HMENU,UINT,UINT);
3282 WINUSERAPI BOOL WINAPI InflateRect(LPRECT,int,int);
3283 WINUSERAPI BOOL WINAPI InSendMessage(void);
3284 
3285 WINUSERAPI BOOL WINAPI InsertMenuA(HMENU,UINT,UINT,UINT,LPCSTR);
3286 WINUSERAPI BOOL WINAPI InsertMenuW(HMENU,UINT,UINT,UINT,LPCWSTR);
3287 WINUSERAPI BOOL WINAPI InsertMenuItemA(HMENU,UINT,BOOL,LPCMENUITEMINFOA);
3288 WINUSERAPI BOOL WINAPI InsertMenuItemW(HMENU,UINT,BOOL,LPCMENUITEMINFOW);
3289 WINUSERAPI INT WINAPI InternalGetWindowText(HWND,LPWSTR,INT);
3290 WINUSERAPI BOOL WINAPI IntersectRect(LPRECT,LPCRECT,LPCRECT);
3291 WINUSERAPI BOOL WINAPI InvalidateRect(HWND,LPCRECT,BOOL);
3292 WINUSERAPI BOOL WINAPI InvalidateRgn(HWND,HRGN,BOOL);
3293 WINUSERAPI BOOL WINAPI InvertRect(HDC,LPCRECT);
3294 WINUSERAPI BOOL WINAPI IsCharAlphaA(CHAR ch);
3295 WINUSERAPI BOOL WINAPI IsCharAlphaNumericA(CHAR);
3296 WINUSERAPI BOOL WINAPI IsCharAlphaNumericW(WCHAR);
3297 WINUSERAPI BOOL WINAPI IsCharAlphaW(WCHAR);
3298 WINUSERAPI BOOL WINAPI IsCharLowerA(CHAR);
3299 WINUSERAPI BOOL WINAPI IsCharLowerW(WCHAR);
3300 WINUSERAPI BOOL WINAPI IsCharUpperA(CHAR);
3301 WINUSERAPI BOOL WINAPI IsCharUpperW(WCHAR);
3302 WINUSERAPI BOOL WINAPI IsChild(HWND,HWND);
3303 WINUSERAPI BOOL WINAPI IsClipboardFormatAvailable(UINT);
3304 WINUSERAPI BOOL WINAPI IsDialogMessageA(HWND,LPMSG);
3305 WINUSERAPI BOOL WINAPI IsDialogMessageW(HWND,LPMSG);
3306 WINUSERAPI UINT WINAPI IsDlgButtonChecked(HWND,int);
3307 
3308 WINUSERAPI BOOL WINAPI IsIconic(HWND);
3309 WINUSERAPI BOOL WINAPI IsMenu(HMENU);
3310 WINUSERAPI BOOL WINAPI IsRectEmpty(LPCRECT);
3311 WINUSERAPI BOOL WINAPI IsWindow(HWND);
3312 WINUSERAPI BOOL WINAPI IsWindowEnabled(HWND);
3313 WINUSERAPI BOOL WINAPI IsWindowUnicode(HWND);
3314 WINUSERAPI BOOL WINAPI IsWindowVisible(HWND);
3315 
3316 WINUSERAPI BOOL WINAPI IsZoomed(HWND);
3317 WINUSERAPI VOID WINAPI keybd_event(BYTE,BYTE,DWORD,DWORD);
3318 WINUSERAPI BOOL WINAPI KillTimer(HWND,UINT);
3319 WINUSERAPI HACCEL WINAPI LoadAcceleratorsA(HINSTANCE,LPCSTR);
3320 WINUSERAPI HACCEL WINAPI LoadAcceleratorsW(HINSTANCE,LPCWSTR);
3321 WINUSERAPI HBITMAP WINAPI LoadBitmapA(HINSTANCE,LPCSTR);
3322 WINUSERAPI HBITMAP WINAPI LoadBitmapW(HINSTANCE,LPCWSTR);
3323 WINUSERAPI HCURSOR WINAPI LoadCursorA(HINSTANCE,LPCSTR);
3324 WINUSERAPI HCURSOR WINAPI LoadCursorFromFileA(LPCSTR);
3325 WINUSERAPI HCURSOR WINAPI LoadCursorFromFileW(LPCWSTR);
3326 WINUSERAPI HCURSOR WINAPI LoadCursorW(HINSTANCE,LPCWSTR);
3327 WINUSERAPI HICON WINAPI LoadIconA(HINSTANCE,LPCSTR);
3328 WINUSERAPI HICON WINAPI LoadIconW(HINSTANCE,LPCWSTR);
3329 WINUSERAPI HANDLE WINAPI LoadImageA(HINSTANCE,LPCSTR,UINT,int,int,UINT);
3330 WINUSERAPI HANDLE WINAPI LoadImageW(HINSTANCE,LPCWSTR,UINT,int,int,UINT);
3331 WINUSERAPI HKL WINAPI LoadKeyboardLayoutA(LPCSTR,UINT);
3332 WINUSERAPI HKL WINAPI LoadKeyboardLayoutW(LPCWSTR,UINT);
3333 WINUSERAPI HMENU WINAPI LoadMenuA(HINSTANCE,LPCSTR);
3334 WINUSERAPI HMENU WINAPI LoadMenuIndirectA(const MENUTEMPLATE*);
3335 WINUSERAPI HMENU WINAPI LoadMenuIndirectW(const MENUTEMPLATE*);
3336 WINUSERAPI HMENU WINAPI LoadMenuW(HINSTANCE,LPCWSTR);
3337 WINUSERAPI int WINAPI LoadStringA(HINSTANCE,UINT,LPSTR,int);
3338 WINUSERAPI int WINAPI LoadStringW(HINSTANCE,UINT,LPWSTR,int);
3339 WINUSERAPI BOOL WINAPI LockWindowUpdate(HWND);
3340 
3341 WINUSERAPI int WINAPI LookupIconIdFromDirectory(PBYTE,BOOL);
3342 WINUSERAPI int WINAPI LookupIconIdFromDirectoryEx(PBYTE,BOOL,int,int,UINT);
3343 WINUSERAPI BOOL WINAPI MapDialogRect(HWND,LPRECT);
3344 WINUSERAPI UINT WINAPI MapVirtualKeyA(UINT,UINT);
3345 WINUSERAPI UINT WINAPI MapVirtualKeyExA(UINT,UINT,HKL);
3346 WINUSERAPI UINT WINAPI MapVirtualKeyExW(UINT,UINT,HKL);
3347 WINUSERAPI UINT WINAPI MapVirtualKeyW(UINT,UINT);
3348 WINUSERAPI int WINAPI MapWindowPoints(HWND,HWND,LPPOINT,UINT);
3349 WINUSERAPI int WINAPI MenuItemFromPoint(HWND,HMENU,POINT);
3350 WINUSERAPI BOOL WINAPI MessageBeep(UINT);
3351 WINUSERAPI int WINAPI MessageBoxA(HWND,LPCSTR,LPCSTR,UINT);
3352 WINUSERAPI int WINAPI MessageBoxW(HWND,LPCWSTR,LPCWSTR,UINT);
3353 WINUSERAPI int WINAPI MessageBoxExA(HWND,LPCSTR,LPCSTR,UINT,WORD);
3354 WINUSERAPI int WINAPI MessageBoxExW(HWND,LPCWSTR,LPCWSTR,UINT,WORD);
3355 WINUSERAPI int WINAPI MessageBoxIndirectA(CONST MSGBOXPARAMSA*);
3356 WINUSERAPI int WINAPI MessageBoxIndirectW(CONST MSGBOXPARAMSW*);
3357 WINUSERAPI BOOL WINAPI ModifyMenuA(HMENU,UINT,UINT,UINT,LPCSTR);
3358 WINUSERAPI BOOL WINAPI ModifyMenuW(HMENU,UINT,UINT,UINT,LPCWSTR);
3359 
3360 WINUSERAPI void WINAPI mouse_event(DWORD,DWORD,DWORD,DWORD,ULONG_PTR);
3361 WINUSERAPI BOOL WINAPI MoveWindow(HWND,int,int,int,int,BOOL);
3362 WINUSERAPI DWORD WINAPI MsgWaitForMultipleObjects(DWORD,CONST HANDLE*,BOOL,DWORD,DWORD);
3363 WINUSERAPI DWORD WINAPI MsgWaitForMultipleObjectsEx(DWORD,CONST HANDLE*,DWORD,DWORD,DWORD);
3364 
3365 WINUSERAPI DWORD WINAPI OemKeyScan(WORD);
3366 WINUSERAPI BOOL WINAPI OemToCharA(LPCSTR,LPSTR);
3367 WINUSERAPI BOOL WINAPI OemToCharBuffA(LPCSTR,LPSTR,DWORD);
3368 WINUSERAPI BOOL WINAPI OemToCharBuffW(LPCSTR,LPWSTR,DWORD);
3369 WINUSERAPI BOOL WINAPI OemToCharW(LPCSTR,LPWSTR);
3370 WINUSERAPI BOOL WINAPI OffsetRect(LPRECT,int,int);
3371 WINUSERAPI BOOL WINAPI OpenClipboard(HWND);
3372 WINUSERAPI HDESK WINAPI OpenDesktopA(LPSTR,DWORD,BOOL,DWORD);
3373 WINUSERAPI HDESK WINAPI OpenDesktopW(LPWSTR,DWORD,BOOL,DWORD);
3374 WINUSERAPI BOOL WINAPI OpenIcon(HWND);
3375 WINUSERAPI HDESK WINAPI OpenInputDesktop(DWORD,BOOL,DWORD);
3376 WINUSERAPI HWINSTA WINAPI OpenWindowStationA(LPSTR,BOOL,DWORD);
3377 WINUSERAPI HWINSTA WINAPI OpenWindowStationW(LPWSTR,BOOL,DWORD);
3378 WINUSERAPI BOOL WINAPI PaintDesktop(HDC);
3379 WINUSERAPI BOOL WINAPI PeekMessageA(LPMSG,HWND,UINT,UINT,UINT);
3380 WINUSERAPI BOOL WINAPI PeekMessageW(LPMSG,HWND,UINT,UINT,UINT);
3381 #define PostAppMessageA(t,m,w,l) PostThreadMessageA((DWORD)t,m,w,l)
3382 #define PostAppMessageW(t,m,w,l) PostThreadMessageW((DWORD)t,m,w,l)
3383 WINUSERAPI BOOL WINAPI PostMessageA(HWND,UINT,WPARAM,LPARAM);
3384 WINUSERAPI BOOL WINAPI PostMessageW(HWND,UINT,WPARAM,LPARAM);
3385 WINUSERAPI void WINAPI PostQuitMessage(int);
3386 WINUSERAPI BOOL WINAPI PostThreadMessageA(DWORD,UINT,WPARAM,LPARAM);
3387 WINUSERAPI BOOL WINAPI PostThreadMessageW(DWORD,UINT,WPARAM,LPARAM);
3388 
3389 WINUSERAPI BOOL WINAPI PtInRect(LPCRECT,POINT);
3390 WINUSERAPI HWND WINAPI RealChildWindowFromPoint(HWND,POINT);
3391 WINUSERAPI UINT WINAPI RealGetWindowClassA(HWND,LPSTR,UINT);
3392 WINUSERAPI UINT WINAPI RealGetWindowClassW(HWND,LPWSTR,UINT);
3393 WINUSERAPI BOOL WINAPI RedrawWindow(HWND,LPCRECT,HRGN,UINT);
3394 WINUSERAPI ATOM WINAPI RegisterClassA(CONST WNDCLASSA*);
3395 WINUSERAPI ATOM WINAPI RegisterClassW(CONST WNDCLASSW*);
3396 WINUSERAPI ATOM WINAPI RegisterClassExA(CONST WNDCLASSEXA*);
3397 WINUSERAPI ATOM WINAPI RegisterClassExW(CONST WNDCLASSEXW*);
3398 WINUSERAPI UINT WINAPI RegisterClipboardFormatA(LPCSTR);
3399 WINUSERAPI UINT WINAPI RegisterClipboardFormatW(LPCWSTR);
3400 
3401 WINUSERAPI BOOL WINAPI RegisterHotKey(HWND,int,UINT,UINT);
3402 
3403 WINUSERAPI UINT WINAPI RegisterWindowMessageA(LPCSTR);
3404 WINUSERAPI UINT WINAPI RegisterWindowMessageW(LPCWSTR);
3405 WINUSERAPI BOOL WINAPI ReleaseCapture(void);
3406 WINUSERAPI int WINAPI ReleaseDC(HWND,HDC);
3407 WINUSERAPI BOOL WINAPI RemoveMenu(HMENU,UINT,UINT);
3408 WINUSERAPI HANDLE WINAPI RemovePropA(HWND,LPCSTR);
3409 WINUSERAPI HANDLE WINAPI RemovePropW(HWND,LPCWSTR);
3410 WINUSERAPI BOOL WINAPI ReplyMessage(LRESULT);
3411 WINUSERAPI BOOL WINAPI ScreenToClient(HWND,LPPOINT);
3412 WINUSERAPI BOOL WINAPI ScrollDC(HDC,int,int,LPCRECT,LPCRECT,HRGN,LPRECT);
3413 WINUSERAPI BOOL WINAPI ScrollWindow(HWND,int,int,LPCRECT,LPCRECT);
3414 WINUSERAPI int WINAPI ScrollWindowEx(HWND,int,int,LPCRECT,LPCRECT,HRGN,LPRECT,UINT);
3415 WINUSERAPI LONG WINAPI SendDlgItemMessageA(HWND,int,UINT,WPARAM,LPARAM);
3416 WINUSERAPI LONG WINAPI SendDlgItemMessageW(HWND,int,UINT,WPARAM,LPARAM);
3417 WINUSERAPI UINT WINAPI SendInput(UINT,LPINPUT,int);
3418 WINUSERAPI LRESULT WINAPI SendMessageA(HWND,UINT,WPARAM,LPARAM);
3419 WINUSERAPI BOOL WINAPI SendMessageCallbackA(HWND,UINT,WPARAM,LPARAM,SENDASYNCPROC,DWORD);
3420 WINUSERAPI BOOL WINAPI SendMessageCallbackW(HWND,UINT,WPARAM,LPARAM,SENDASYNCPROC,DWORD);
3421 WINUSERAPI LRESULT WINAPI SendMessageTimeoutA(HWND,UINT,WPARAM,LPARAM,UINT,UINT,PDWORD_PTR);
3422 WINUSERAPI LRESULT WINAPI SendMessageTimeoutW(HWND,UINT,WPARAM,LPARAM,UINT,UINT,PDWORD_PTR);
3423 WINUSERAPI LRESULT WINAPI SendMessageW(HWND,UINT,WPARAM,LPARAM);
3424 WINUSERAPI BOOL WINAPI SendNotifyMessageA(HWND,UINT,WPARAM,LPARAM);
3425 WINUSERAPI BOOL WINAPI SendNotifyMessageW(HWND,UINT,WPARAM,LPARAM);
3426 WINUSERAPI HWND WINAPI SetActiveWindow(HWND);
3427 WINUSERAPI HWND WINAPI SetCapture(HWND hWnd);
3428 WINUSERAPI BOOL WINAPI SetCaretBlinkTime(UINT);
3429 WINUSERAPI BOOL WINAPI SetCaretPos(int,int);
3430 WINUSERAPI DWORD WINAPI SetClassLongA(HWND,int,LONG);
3431 WINUSERAPI DWORD WINAPI SetClassLongW(HWND,int,LONG);
3432 
3433 #ifdef _WIN64
3434 WINUSERAPI ULONG_PTR WINAPI SetClassLongPtrA(HWND,int,LONG_PTR);
3435 WINUSERAPI ULONG_PTR WINAPI SetClassLongPtrW(HWND,int,LONG_PTR);
3436 #else
3437 #define SetClassLongPtrA SetClassLongA
3438 #define SetClassLongPtrW SetClassLongW
3439 #endif
3440 
3441 WINUSERAPI WORD WINAPI SetClassWord(HWND,int,WORD);
3442 WINUSERAPI HANDLE WINAPI SetClipboardData(UINT,HANDLE);
3443 WINUSERAPI HWND WINAPI SetClipboardViewer(HWND);
3444 WINUSERAPI HCURSOR WINAPI SetCursor(HCURSOR);
3445 WINUSERAPI BOOL WINAPI SetCursorPos(int,int);
3446 WINUSERAPI VOID WINAPI SetDebugErrorLevel(DWORD);
3447 WINUSERAPI BOOL WINAPI SetDlgItemInt(HWND,int,UINT,BOOL);
3448 WINUSERAPI BOOL WINAPI SetDlgItemTextA(HWND,int,LPCSTR);
3449 WINUSERAPI BOOL WINAPI SetDlgItemTextW(HWND,int,LPCWSTR);
3450 WINUSERAPI BOOL WINAPI SetDoubleClickTime(UINT);
3451 WINUSERAPI HWND WINAPI SetFocus(HWND);
3452 WINUSERAPI BOOL WINAPI SetForegroundWindow(HWND);
3453 WINUSERAPI BOOL WINAPI SetKeyboardState(PBYTE);
3454 WINUSERAPI BOOL WINAPI SetMenu(HWND,HMENU);
3455 WINUSERAPI BOOL WINAPI SetMenuContextHelpId(HMENU,DWORD);
3456 WINUSERAPI BOOL WINAPI SetMenuDefaultItem(HMENU,UINT,UINT);
3457 WINUSERAPI BOOL WINAPI SetMenuInfo(HMENU,LPCMENUINFO);
3458 WINUSERAPI BOOL WINAPI SetMenuItemBitmaps(HMENU,UINT,UINT,HBITMAP,HBITMAP);
3459 WINUSERAPI BOOL WINAPI SetMenuItemInfoA(HMENU,UINT,BOOL,LPCMENUITEMINFOA);
3460 WINUSERAPI BOOL WINAPI SetMenuItemInfoW( HMENU,UINT,BOOL,LPCMENUITEMINFOW);
3461 WINUSERAPI LPARAM WINAPI SetMessageExtraInfo(LPARAM);
3462 WINUSERAPI BOOL WINAPI SetMessageQueue(int);
3463 WINUSERAPI HWND WINAPI SetParent(HWND,HWND);
3464 
3465 WINUSERAPI BOOL WINAPI SetProcessWindowStation(HWINSTA);
3466 WINUSERAPI BOOL WINAPI SetPropA(HWND,LPCSTR,HANDLE);
3467 WINUSERAPI BOOL WINAPI SetPropW(HWND,LPCWSTR,HANDLE);
3468 WINUSERAPI BOOL WINAPI SetRect(LPRECT,int,int,int,int);
3469 WINUSERAPI BOOL WINAPI SetRectEmpty(LPRECT);
3470 WINUSERAPI int WINAPI SetScrollInfo(HWND,int,LPCSCROLLINFO,BOOL);
3471 WINUSERAPI int WINAPI SetScrollPos(HWND,int,int,BOOL);
3472 WINUSERAPI BOOL WINAPI SetScrollRange(HWND,int,int,int,BOOL);
3473 WINUSERAPI BOOL WINAPI SetSysColors(int,const INT *,const COLORREF *);
3474 #define SetSysModalWindow(h) (NULL)
3475 WINUSERAPI BOOL WINAPI SetSystemCursor(HCURSOR,DWORD);
3476 WINUSERAPI BOOL WINAPI SetThreadDesktop(HDESK);
3477 WINUSERAPI UINT WINAPI SetTimer(HWND,UINT,UINT,TIMERPROC);
3478 WINUSERAPI BOOL WINAPI SetUserObjectInformationA(HANDLE,int,PVOID,DWORD);
3479 WINUSERAPI BOOL WINAPI SetUserObjectInformationW(HANDLE,int,PVOID,DWORD);
3480 WINUSERAPI BOOL WINAPI SetUserObjectSecurity(HANDLE,PSECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
3481 
3482 WINUSERAPI BOOL WINAPI SetWindowContextHelpId(HWND,DWORD);
3483 WINUSERAPI LONG WINAPI SetWindowLongA(HWND,int,LONG);
3484 WINUSERAPI LONG WINAPI SetWindowLongW(HWND,int,LONG);
3485 
3486 #ifdef _WIN64
3487 WINUSERAPI LONG_PTR WINAPI SetWindowLongPtrA(HWND,int,LONG_PTR);
3488 WINUSERAPI LONG_PTR WINAPI SetWindowLongPtrW(HWND,int,LONG_PTR);
3489 #else
3490 #define SetWindowLongPtrA SetWindowLongA
3491 #define SetWindowLongPtrW SetWindowLongW
3492 #endif
3493 
3494 WINUSERAPI BOOL WINAPI SetWindowPlacement(HWND hWnd,const WINDOWPLACEMENT*);
3495 WINUSERAPI BOOL WINAPI SetWindowPos(HWND,HWND,int,int,int,int,UINT);
3496 WINUSERAPI int WINAPI SetWindowRgn(HWND,HRGN,BOOL);
3497 WINUSERAPI HHOOK WINAPI SetWindowsHookA(int,HOOKPROC);
3498 WINUSERAPI HHOOK WINAPI SetWindowsHookW(int,HOOKPROC);
3499 WINUSERAPI HHOOK WINAPI SetWindowsHookExA(int,HOOKPROC,HINSTANCE,DWORD);
3500 WINUSERAPI HHOOK WINAPI SetWindowsHookExW(int,HOOKPROC,HINSTANCE,DWORD);
3501 WINUSERAPI BOOL WINAPI SetWindowTextA(HWND,LPCSTR);
3502 WINUSERAPI BOOL WINAPI SetWindowTextW(HWND,LPCWSTR);
3503 WINUSERAPI WORD WINAPI SetWindowWord(HWND,int,WORD);
3504 WINUSERAPI BOOL WINAPI ShowCaret(HWND);
3505 WINUSERAPI int WINAPI ShowCursor(BOOL);
3506 WINUSERAPI BOOL WINAPI ShowOwnedPopups(HWND,BOOL);
3507 WINUSERAPI BOOL WINAPI ShowScrollBar(HWND,int,BOOL);
3508 WINUSERAPI BOOL WINAPI ShowWindow(HWND,int);
3509 WINUSERAPI BOOL WINAPI ShowWindowAsync(HWND,int);
3510 WINUSERAPI BOOL WINAPI SubtractRect(LPRECT,LPCRECT,LPCRECT);
3511 WINUSERAPI BOOL WINAPI SwapMouseButton(BOOL);
3512 WINUSERAPI BOOL WINAPI SwitchDesktop(HDESK);
3513 
3514 WINUSERAPI BOOL WINAPI SystemParametersInfoA(UINT,UINT,PVOID,UINT);
3515 WINUSERAPI BOOL WINAPI SystemParametersInfoW(UINT,UINT,PVOID,UINT);
3516 WINUSERAPI LONG WINAPI TabbedTextOutA(HDC,int,int,LPCSTR,int,int,LPINT,int);
3517 WINUSERAPI LONG WINAPI TabbedTextOutW(HDC,int,int,LPCWSTR,int,int,LPINT,int);
3518 WINUSERAPI WORD WINAPI TileWindows(HWND,UINT,LPCRECT,UINT,const HWND *);
3519 WINUSERAPI int WINAPI ToAscii(UINT,UINT,PBYTE,LPWORD,UINT);
3520 WINUSERAPI int WINAPI ToAsciiEx(UINT,UINT,PBYTE,LPWORD,UINT,HKL);
3521 WINUSERAPI int WINAPI ToUnicode(UINT,UINT,PBYTE,LPWSTR,int,UINT);
3522 WINUSERAPI int WINAPI ToUnicodeEx(UINT,UINT,PBYTE,LPWSTR,int,UINT,HKL);
3523 WINUSERAPI BOOL WINAPI TrackMouseEvent(LPTRACKMOUSEEVENT);
3524 WINUSERAPI BOOL WINAPI TrackPopupMenu(HMENU,UINT,int,int,int,HWND,LPCRECT);
3525 WINUSERAPI BOOL WINAPI TrackPopupMenuEx(HMENU,UINT,int,int,HWND,LPTPMPARAMS);
3526 WINUSERAPI int WINAPI TranslateAcceleratorA(HWND,HACCEL,LPMSG);
3527 WINUSERAPI int WINAPI TranslateAcceleratorW(HWND,HACCEL,LPMSG);
3528 WINUSERAPI BOOL WINAPI TranslateMDISysAccel(HWND,LPMSG);
3529 WINUSERAPI BOOL WINAPI TranslateMessage(const MSG*);
3530 WINUSERAPI BOOL WINAPI UnhookWindowsHook(int,HOOKPROC);
3531 WINUSERAPI BOOL WINAPI UnhookWindowsHookEx(HHOOK);
3532 
3533 WINUSERAPI BOOL WINAPI UnionRect(LPRECT,LPCRECT,LPCRECT);
3534 WINUSERAPI BOOL WINAPI UnloadKeyboardLayout(HKL);
3535 WINUSERAPI BOOL WINAPI UnregisterClassA(LPCSTR,HINSTANCE);
3536 WINUSERAPI BOOL WINAPI UnregisterClassW(LPCWSTR,HINSTANCE);
3537 
3538 WINUSERAPI BOOL WINAPI UnregisterHotKey(HWND,int);
3539 WINUSERAPI BOOL WINAPI UpdateWindow(HWND);
3540 
3541 WINUSERAPI BOOL WINAPI ValidateRect(HWND,LPCRECT);
3542 WINUSERAPI BOOL WINAPI ValidateRgn(HWND,HRGN);
3543 WINUSERAPI SHORT WINAPI VkKeyScanA(CHAR);
3544 WINUSERAPI SHORT WINAPI VkKeyScanExA(CHAR,HKL);
3545 WINUSERAPI SHORT WINAPI VkKeyScanExW(WCHAR,HKL);
3546 WINUSERAPI SHORT WINAPI VkKeyScanW(WCHAR);
3547 WINUSERAPI DWORD WINAPI WaitForInputIdle(HANDLE,DWORD);
3548 WINUSERAPI BOOL WINAPI WaitMessage(void);
3549 WINUSERAPI HWND WINAPI WindowFromDC(HDC hDC);
3550 WINUSERAPI HWND WINAPI WindowFromPoint(POINT);
3551 WINUSERAPI UINT WINAPI WinExec(LPCSTR,UINT);
3552 WINUSERAPI BOOL WINAPI WinHelpA(HWND,LPCSTR,UINT,DWORD);
3553 WINUSERAPI BOOL WINAPI WinHelpW(HWND,LPCWSTR,UINT,DWORD);
3554 WINUSERAPI int WINAPIV wsprintfA(LPSTR,LPCSTR,...);
3555 WINUSERAPI int WINAPIV wsprintfW(LPWSTR,LPCWSTR,...);
3556 WINUSERAPI int WINAPI wvsprintfA(LPSTR,LPCSTR,va_list arglist);
3557 WINUSERAPI int WINAPI wvsprintfW(LPWSTR,LPCWSTR,va_list arglist);
3558 
3559 #define EDITWORDBREAKPROC __AW(EDITWORDBREAKPROC)
3560 #define PROPENUMPROC __AW(PROPENUMPROC)
3561 #define PROPENUMPROCEX __AW(PROPENUMPROCEX)
3562 #define DEKSTOPENUMPROC __AW(DEKSTOPENUMPROC)
3563 #define WINSTAENUMPROC __AW(WINSTAENUMPROC)
3564 #define PROPENUMPROC __AW(PROPENUMPROC)
3565 #define PROPENUMPROCEX __AW(PROPENUMPROCEX)
3566 #define MAKEINTRESOURCE __AW(MAKEINTRESOURCE)
3567 typedef __AW(WNDCLASS) WNDCLASS,*LPWNDCLASS,*PWNDCLASS;
3568 typedef __AW(WNDCLASSEX) WNDCLASSEX,*LPWNDCLASSEX,*PWNDCLASSEX;
3569 typedef __AW(MENUITEMINFO) MENUITEMINFO,*LPMENUITEMINFO;
3570 typedef __AW(LPCMENUITEMINFO) LPCMENUITEMINFO;
3571 typedef __AW(MSGBOXPARAMS) MSGBOXPARAMS,*PMSGBOXPARAMS,*LPMSGBOXPARAMS;
3572 typedef __AW(HIGHCONTRAST) HIGHCONTRAST,*LPHIGHCONTRAST;
3573 typedef __AW(SERIALKEYS) SERIALKEYS,*LPSERIALKEYS;
3574 typedef __AW(SOUNDSENTRY) SOUNDSENTRY,*LPSOUNDSENTRY;
3575 typedef __AW(CREATESTRUCT) CREATESTRUCT, *LPCREATESTRUCT;
3576 typedef __AW(CBT_CREATEWND) CBT_CREATEWND, *LPCBT_CREATEWND;
3577 typedef __AW(MDICREATESTRUCT) MDICREATESTRUCT,*LPMDICREATESTRUCT;
3578 typedef __AW(MULTIKEYHELP) MULTIKEYHELP,*PMULTIKEYHELP,*LPMULTIKEYHELP;
3579 typedef __AW(MONITORINFOEX) MONITORINFOEX, *LPMONITORINFOEX;
3580 #define AppendMenu __AW(AppendMenu)
3581 #define BroadcastSystemMessage __AW(BroadcastSystemMessage)
3582 #define BroadcastSystemMessageEx __AW(BroadcastSystemMessageEx)
3583 #define CallMsgFilter __AW(CallMsgFilter)
3584 #define CallWindowProc __AW(CallWindowProc)
3585 #define ChangeMenu __AW(ChangeMenu)
3586 #define CharLower __AW(CharLower)
3587 #define CharLowerBuff __AW(CharLowerBuff)
3588 #define CharNext __AW(CharNext)
3589 #define CharPrev __AW(CharPrev)
3590 #define CharToOem __AW(CharToOem)
3591 #define CharToOemBuff __AW(CharToOemBuff)
3592 #define CharUpper __AW(CharUpper)
3593 #define CharUpperBuff __AW(CharUpperBuff)
3594 #define CopyAcceleratorTable __AW(CopyAcceleratorTable)
3595 #define CreateAcceleratorTable __AW(CreateAcceleratorTable)
3596 #define CreateDialog __AW(CreateDialog)
3597 #define CreateDialogIndirect __AW(CreateDialogIndirect)
3598 #define CreateDialogIndirectParam __AW(CreateDialogIndirectParam)
3599 #define CreateDialogParam __AW(CreateDialogParam)
3600 #define CreateMDIWindow __AW(CreateMDIWindow)
3601 #define CreateWindow __AW(CreateWindow)
3602 #define CreateWindowEx __AW(CreateWindowEx)
3603 #define CreateWindowStation __AW(CreateWindowStation)
3604 #define DefDlgProc __AW(DefDlgProc)
3605 #define DefFrameProc __AW(DefFrameProc)
3606 #define DefMDIChildProc __AW(DefMDIChildProc)
3607 #define DefWindowProc __AW(DefWindowProc)
3608 #define DialogBox __AW(DialogBox)
3609 #define DialogBoxIndirect __AW(DialogBoxIndirect)
3610 #define DialogBoxIndirectParam __AW(DialogBoxIndirectParam)
3611 #define DialogBoxParam __AW(DialogBoxParam)
3612 #define DispatchMessage __AW(DispatchMessage)
3613 #define DlgDirList __AW(DlgDirList)
3614 #define DlgDirListComboBox __AW(DlgDirListComboBox)
3615 #define DlgDirSelectComboBoxEx __AW(DlgDirSelectComboBoxEx)
3616 #define DlgDirSelectEx __AW(DlgDirSelectEx)
3617 #define DrawState __AW(DrawState)
3618 #define DrawText __AW(DrawText)
3619 #define DrawTextEx __AW(DrawTextEx)
3620 #define EnumDesktops __AW(EnumDesktops)
3621 #define EnumProps __AW(EnumProps)
3622 #define EnumPropsEx __AW(EnumPropsEx)
3623 #define EnumWindowStations __AW(EnumWindowStations)
3624 #define FindWindow __AW(FindWindow)
3625 #define FindWindowEx __AW(FindWindowEx)
3626 #define GetClassInfo __AW(GetClassInfo)
3627 #define GetClassInfoEx __AW(GetClassInfoEx)
3628 #define GetClassLong __AW(GetClassLong)
3629 #define GetClassLongPtr __AW(GetClassLongPtr)
3630 #define GetClassName __AW(GetClassName)
3631 #define GetClipboardFormatName __AW(GetClipboardFormatName)
3632 #define GetDlgItemText __AW(GetDlgItemText)
3633 #define GetKeyboardLayoutName __AW(GetKeyboardLayoutName)
3634 #define GetKeyNameText __AW(GetKeyNameText)
3635 #define GetMenuItemInfo __AW(GetMenuItemInfo)
3636 #define GetMenuString __AW(GetMenuString)
3637 #define GetMessage __AW(GetMessage)
3638 #define GetMonitorInfo __AW(GetMonitorInfo)
3639 #define GetProp __AW(GetProp)
3640 #define GetRawInputDeviceInfo __AW(GetRawInputDeviceInfo)
3641 #define GetTabbedTextExtent __AW(GetTabbedTextExtent)
3642 #define GetUserObjectInformation __AW(GetUserObjectInformation)
3643 #define GetWindowLong __AW(GetWindowLong)
3644 #define GetWindowLongPtr __AW(GetWindowLongPtr)
3645 #define GetWindowText __AW(GetWindowText)
3646 #define GetWindowTextLength __AW(GetWindowTextLength)
3647 #define GetAltTabInfo __AW(GetAltTabInfo)
3648 #define GetWindowModuleFileName __AW(GetWindowModuleFileName)
3649 #define GrayString __AW(GrayString)
3650 #define InsertMenu __AW(InsertMenu)
3651 #define InsertMenuItem __AW(InsertMenuItem)
3652 #define IsCharAlpha __AW(IsCharAlpha)
3653 #define IsCharAlphaNumeric __AW(IsCharAlphaNumeric)
3654 #define IsCharLower __AW(IsCharLower)
3655 #define IsCharUpper __AW(IsCharUpper)
3656 #define IsDialogMessage __AW(IsDialogMessage)
3657 #define LoadAccelerators __AW(LoadAccelerators)
3658 #define LoadBitmap __AW(LoadBitmap)
3659 #define LoadCursor __AW(LoadCursor)
3660 #define LoadCursorFromFile __AW(LoadCursorFromFile)
3661 #define LoadIcon __AW(LoadIcon)
3662 #define LoadImage __AW(LoadImage)
3663 #define LoadKeyboardLayout __AW(LoadKeyboardLayout)
3664 #define LoadMenu __AW(LoadMenu)
3665 #define LoadMenuIndirect __AW(LoadMenuIndirect)
3666 #define LoadString __AW(LoadString)
3667 #define MapVirtualKey __AW(MapVirtualKey)
3668 #define MapVirtualKeyEx __AW(MapVirtualKeyEx)
3669 #define MessageBox __AW(MessageBox)
3670 #define MessageBoxEx __AW(MessageBoxEx)
3671 #define MessageBoxIndirect __AW(MessageBoxIndirect)
3672 #define ModifyMenu __AW(ModifyMenu)
3673 #define OemToChar __AW(OemToChar)
3674 #define OemToCharBuff __AW(OemToCharBuff)
3675 #define OpenDesktop __AW(OpenDesktop)
3676 #define OpenWindowStation __AW(OpenWindowStation)
3677 #define PeekMessage __AW(PeekMessage)
3678 #define PostAppMessage __AW(PostAppMessage)
3679 #define PostMessage __AW(PostMessage)
3680 #define PostThreadMessage __AW(PostThreadMessage)
3681 #define RealGetWindowClass __AW(RealGetWindowClass)
3682 #define RegisterClass __AW(RegisterClass)
3683 #define RegisterClassEx __AW(RegisterClassEx)
3684 #define RegisterClipboardFormat __AW(RegisterClipboardFormat)
3685 #define RegisterDeviceNotification __AW(RegisterDeviceNotification)
3686 #define RegisterWindowMessage __AW(RegisterWindowMessage)
3687 #define RemoveProp __AW(RemoveProp)
3688 #define SendDlgItemMessage __AW(SendDlgItemMessage)
3689 #define SendMessage __AW(SendMessage)
3690 #define SendMessageCallback __AW(SendMessageCallback)
3691 #define SendMessageTimeout __AW(SendMessageTimeout)
3692 #define SendNotifyMessage __AW(SendNotifyMessage)
3693 #define SetClassLong __AW(SetClassLong)
3694 #define SetClassLongPtr __AW(SetClassLongPtr)
3695 #define SetDlgItemText __AW(SetDlgItemText)
3696 #define SetMenuItemInfo __AW(SetMenuItemInfo)
3697 #define SetProp __AW(SetProp)
3698 #define SetUserObjectInformation __AW(SetUserObjectInformation)
3699 #define SetWindowLong __AW(SetWindowLong)
3700 #define SetWindowLongPtr __AW(SetWindowLongPtr)
3701 #define SetWindowsHook __AW(SetWindowsHook)
3702 #define SetWindowsHookEx __AW(SetWindowsHookEx)
3703 #define SetWindowText __AW(SetWindowText)
3704 #define SystemParametersInfo __AW(SystemParametersInfo)
3705 #define TabbedTextOut __AW(TabbedTextOut)
3706 #define TranslateAccelerator __AW(TranslateAccelerator)
3707 #define UnregisterClass __AW(UnregisterClass)
3708 #define VkKeyScan __AW(VkKeyScan)
3709 #define VkKeyScanEx __AW(VkKeyScanEx)
3710 #define WinHelp __AW(WinHelp)
3711 #define wsprintf __AW(wsprintf)
3712 #define wvsprintf __AW(wvsprintf)
3713 
3714 #ifndef NOGDI
3715 typedef __AW(ICONMETRICS) ICONMETRICS,*LPICONMETRICS;
3716 typedef __AW(NONCLIENTMETRICS) NONCLIENTMETRICS,*LPNONCLIENTMETRICS;
3717 #define ChangeDisplaySettings __AW(ChangeDisplaySettings)
3718 #define ChangeDisplaySettingsEx __AW(ChangeDisplaySettingsEx)
3719 #define CreateDesktop __AW(CreateDesktop)
3720 #define EnumDisplaySettings __AW(EnumDisplaySettings)
3721 #define EnumDisplaySettingsEx __AW(EnumDisplaySettingsEx)
3722 #define EnumDisplayDevices __AW(EnumDisplayDevices)
3723 #endif /* NOGDI */
3724 
3725 #endif /* RC_INVOKED */
3726 
3727 #if (_WIN32_WINNT >= 0x0410)
3728 #define DC_GRADIENT	0x00000020
3729 #define TPM_RECURSE 1
3730 #define SW_SMOOTHSCROLL	0x0010
3731 #define MONITOR_DEFAULTTONULL 0
3732 #define MONITOR_DEFAULTTOPRIMARY 1
3733 #define MONITOR_DEFAULTTONEAREST 2
3734 #define MONITORINFOF_PRIMARY 1
3735 #define EDS_RAWMODE 0x00000002
3736 #define ISMEX_NOSEND 0x00000000
3737 #define ISMEX_CALLBACK 0x00000004
3738 #define ISMEX_NOTIFY 0x00000002
3739 #define ISMEX_REPLIED 0x00000008
3740 #define ISMEX_SEND 0x00000001
3741 
3742 #ifndef RC_INVOKED
3743 #define CCHILDREN_TITLEBAR 5
3744 typedef struct tagTITLEBARINFO {
3745 	DWORD cbSize;
3746 	RECT  rcTitleBar;
3747 	DWORD rgstate[CCHILDREN_TITLEBAR+1];
3748 } TITLEBARINFO,*PTITLEBARINFO,*LPTITLEBARINFO;
3749 typedef struct {
3750   UINT  cbSize;
3751   HWND  hwnd;
3752   DWORD dwFlags;
3753   UINT  uCount;
3754   DWORD dwTimeout;
3755 } FLASHWINFO,*PFLASHWINFO;
3756 WINUSERAPI BOOL WINAPI FlashWindowEx(PFLASHWINFO);
3757 WINUSERAPI DWORD WINAPI GetClipboardSequenceNumber(void);
3758 WINUSERAPI BOOL WINAPI GetTitleBarInfo(HWND,PTITLEBARINFO);
3759 WINUSERAPI DWORD WINAPI InSendMessageEx(LPVOID);
3760 WINUSERAPI HMONITOR WINAPI MonitorFromPoint(POINT,DWORD);
3761 WINUSERAPI HMONITOR WINAPI MonitorFromRect(LPCRECT,DWORD);
3762 WINUSERAPI HMONITOR WINAPI MonitorFromWindow(HWND,DWORD);
3763 WINUSERAPI BOOL WINAPI UnregisterDeviceNotification(HANDLE);
3764 
3765 #ifndef NOGDI
3766 WINUSERAPI BOOL WINAPI EnumDisplaySettingsExA(LPCSTR,DWORD,LPDEVMODEA,DWORD);
3767 WINUSERAPI BOOL WINAPI EnumDisplaySettingsExW(LPCWSTR,DWORD,LPDEVMODEW,DWORD);
3768 #endif /* ! NOGDI */
3769 
3770 #endif /* ! RC_INVOKED */
3771 
3772 #endif /* (_WIN32_WINNT >= 0x0410) */
3773 
3774 #if (_WIN32_WINNT >= 0x0490)
3775 #define ASFW_ANY ((DWORD)-1)
3776 #define LSFW_LOCK 1
3777 #define LSFW_UNLOCK 2
3778 #define GMMP_USE_DISPLAY_POINTS 1
3779 #define GMMP_USE_HIGH_RESOLUTION_POINTS 2
3780 
3781 #ifndef RC_INVOKED
3782 typedef struct tagMOUSEMOVEPOINT {
3783   int x;
3784   int y;
3785   DWORD time;
3786   ULONG_PTR dwExtraInfo;
3787 } MOUSEMOVEPOINT,*PMOUSEMOVEPOINT,*LPMOUSEMOVEPOINT;
3788 WINUSERAPI int WINAPI GetMouseMovePointsEx(UINT,LPMOUSEMOVEPOINT,LPMOUSEMOVEPOINT,int,DWORD);
3789 WINUSERAPI BOOL WINAPI AllowSetForegroundWindow(DWORD);
3790 WINUSERAPI BOOL WINAPI LockSetForegroundWindow(UINT);
3791 #endif /* ! RC_INVOKED */
3792 
3793 #endif /* (_WIN32_WINNT >= 0x0490) */
3794 
3795 #if (_WIN32_WINNT >= 0x0500)
3796 #define CF_DIBV5 17
3797 #undef CF_MAX
3798 #define CF_MAX	18
3799 #define BSF_ALLOWSFW 0x00000080
3800 #define BSF_SENDNOTIFYMESSAGE 0x00000100
3801 #define DFC_POPUPMENU 5
3802 #define DFCS_TRANSPARENT	0x800
3803 #define DFCS_HOT	0x1000
3804 #define MIM_MAXHEIGHT 1
3805 #define MIM_BACKGROUND 2
3806 #define MIM_HELPID 4
3807 #define MIM_MENUDATA 8
3808 #define MIM_STYLE 16
3809 #define MIM_APPLYTOSUBMENUS 0x80000000L
3810 #define MNS_NOCHECK 0x80000000
3811 #define MNS_MODELESS 0x40000000
3812 #define MNS_DRAGDROP 0x20000000
3813 #define MNS_AUTODISMISS 0x10000000
3814 #define MNS_NOTIFYBYPOS 0x08000000
3815 #define MNS_CHECKORBMP 0x04000000
3816 #define MB_CANCELTRYCONTINUE 6
3817 #define IDTRYAGAIN 10
3818 #define IDCONTINUE 11
3819 #define KEYEVENTF_UNICODE 0x00000004
3820 #define KEYEVENTF_SCANCODE 0x00000008
3821 #define MOUSEEVENTF_XDOWN 0x00000080
3822 #define MOUSEEVENTF_XUP 0x00000100
3823 #define PM_QS_INPUT (QS_INPUT << 16)
3824 #define PM_QS_POSTMESSAGE ((QS_POSTMESSAGE|QS_HOTKEY|QS_TIMER) << 16)
3825 #define PM_QS_PAINT (QS_PAINT << 16)
3826 #define PM_QS_SENDMESSAGE (QS_SENDMESSAGE << 16)
3827 #define HWND_MESSAGE ((HWND)(-3))
3828 #define SMTO_NOTIMEOUTIFNOTHUNG 0x0008
3829 #define HSHELL_ACCESSIBILITYSTATE 11
3830 #define HSHELL_APPCOMMAND 12
3831 #define HSHELL_RUDEAPPACTIVATED 32772
3832 #define HSHELL_FLASH 32774
3833 #define WM_GETOBJECT 0x003D
3834 #define WM_CHANGEUISTATE 0x0127
3835 #define WM_UPDATEUISTATE 0x0128
3836 #define WM_QUERYUISTATE 0x0129
3837 #define WM_UNINITMENUPOPUP 0x0125
3838 #define WM_MENURBUTTONUP 290
3839 #define WM_MENUCOMMAND 0x0126
3840 #define WM_MENUGETOBJECT 0x0124
3841 #define WM_MENUDRAG 0x0123
3842 #define WM_APPCOMMAND 0x0319
3843 #define WM_NCXBUTTONDOWN 171
3844 #define WM_NCXBUTTONUP 172
3845 #define WM_NCXBUTTONDBLCLK 173
3846 #define WM_NCMOUSEHOVER 0x02A0
3847 #define WM_NCMOUSELEAVE 0x02A2
3848 #define EM_GETIMESTATUS 217
3849 #define EM_SETIMESTATUS 216
3850 #define VK_XBUTTON1	5
3851 #define VK_XBUTTON2	6
3852 #define VK_BROWSER_BACK	0xA6
3853 #define VK_BROWSER_FORWARD	0xA7
3854 #define VK_BROWSER_REFRESH	0xA8
3855 #define VK_BROWSER_STOP	0xA9
3856 #define VK_BROWSER_SEARCH	0xAA
3857 #define VK_BROWSER_FAVORITES	0xAB
3858 #define VK_BROWSER_HOME	0xAC
3859 #define VK_VOLUME_MUTE	0xAD
3860 #define VK_VOLUME_DOWN	0xAE
3861 #define VK_VOLUME_UP	0xAF
3862 #define VK_MEDIA_NEXT_TRACK	0xB0
3863 #define VK_MEDIA_PREV_TRACK	0xB1
3864 #define VK_MEDIA_STOP	0xB2
3865 #define VK_MEDIA_PLAY_PAUSE	0xB3
3866 #define VK_LAUNCH_MAIL	0xB4
3867 #define VK_LAUNCH_MEDIA_SELECT	0xB5
3868 #define VK_LAUNCH_APP1	0xB6
3869 #define VK_LAUNCH_APP2	0xB7
3870 #define VK_OEM_PLUS	0xBB
3871 #define VK_OEM_COMMA	0xBC
3872 #define VK_OEM_MINUS	0xBD
3873 #define VK_OEM_PERIOD	0xBE
3874 #define VK_OEM_102	0xE2
3875 #define VK_PACKET	0xE7
3876 #define MK_XBUTTON1	32
3877 #define MK_XBUTTON2	64
3878 #define FLASHW_STOP 0
3879 #define FLASHW_CAPTION 1
3880 #define FLASHW_TRAY 2
3881 #define FLASHW_ALL (FLASHW_CAPTION|FLASHW_TRAY)
3882 #define FLASHW_TIMER 4
3883 #define FLASHW_TIMERNOFG 12
3884 #define CHILDID_SELF 0
3885 #define OBJID_WINDOW 0x00000000
3886 #define OBJID_SYSMENU 0xFFFFFFFF
3887 #define OBJID_TITLEBAR 0xFFFFFFFE
3888 #define OBJID_MENU 0xFFFFFFFD
3889 #define OBJID_CLIENT 0xFFFFFFFC
3890 #define OBJID_VSCROLL 0xFFFFFFFB
3891 #define OBJID_HSCROLL 0xFFFFFFFA
3892 #define OBJID_SIZEGRIP 0xFFFFFFF9
3893 #define OBJID_CARET 0xFFFFFFF8
3894 #define OBJID_CURSOR 0xFFFFFFF7
3895 #define OBJID_ALERT 0xFFFFFFF6
3896 #define OBJID_SOUND 0xFFFFFFF5
3897 #define GUI_CARETBLINKING 0x00000001
3898 #define GUI_INMOVESIZE 0x00000002
3899 #define GUI_INMENUMODE 0x00000004
3900 #define GUI_SYSTEMMENUMODE 0x00000008
3901 #define GUI_POPUPMENUMODE 0x00000010
3902 #define WINEVENT_OUTOFCONTEXT   0x0000
3903 #define WINEVENT_SKIPOWNTHREAD  0x0001
3904 #define WINEVENT_SKIPOWNPROCESS 0x0002
3905 #define WINEVENT_INCONTEXT      0x0004
3906 #define AW_HOR_POSITIVE 0x00000001
3907 #define AW_HOR_NEGATIVE 0x00000002
3908 #define AW_VER_POSITIVE 0x00000004
3909 #define AW_VER_NEGATIVE 0x00000008
3910 #define AW_CENTER 0x00000010
3911 #define AW_HIDE 0x00010000
3912 #define AW_ACTIVATE 0x00020000
3913 #define AW_SLIDE 0x00040000
3914 #define AW_BLEND 0x00080000
3915 #define DEVICE_NOTIFY_WINDOW_HANDLE 0x00000000
3916 #define DEVICE_NOTIFY_SERVICE_HANDLE 0x00000001
3917 #define EVENT_MIN                       0x00000001
3918 #define EVENT_SYSTEM_SOUND              0x00000001
3919 #define EVENT_SYSTEM_ALERT              0x00000002
3920 #define EVENT_SYSTEM_FOREGROUND         0x00000003
3921 #define EVENT_SYSTEM_MENUSTART          0x00000004
3922 #define EVENT_SYSTEM_MENUEND            0x00000005
3923 #define EVENT_SYSTEM_MENUPOPUPSTART     0x00000006
3924 #define EVENT_SYSTEM_MENUPOPUPEND       0x00000007
3925 #define EVENT_SYSTEM_CAPTURESTART       0x00000008
3926 #define EVENT_SYSTEM_CAPTUREEND         0x00000009
3927 #define EVENT_SYSTEM_MOVESIZESTART      0x0000000a
3928 #define EVENT_SYSTEM_MOVESIZEEND        0x0000000b
3929 #define EVENT_SYSTEM_CONTEXTHELPSTART   0x0000000c
3930 #define EVENT_SYSTEM_CONTEXTHELPEND     0x0000000d
3931 #define EVENT_SYSTEM_DRAGDROPSTART      0x0000000e
3932 #define EVENT_SYSTEM_DRAGDROPEND        0x0000000f
3933 #define EVENT_SYSTEM_DIALOGSTART        0x00000010
3934 #define EVENT_SYSTEM_DIALOGEND          0x00000011
3935 #define EVENT_SYSTEM_SCROLLINGSTART     0x00000012
3936 #define EVENT_SYSTEM_SCROLLINGEND       0x00000013
3937 #define EVENT_SYSTEM_SWITCHSTART        0x00000014
3938 #define EVENT_SYSTEM_SWITCHEND          0x00000015
3939 #define EVENT_SYSTEM_MINIMIZESTART      0x00000016
3940 #define EVENT_SYSTEM_MINIMIZEEND        0x00000017
3941 #define EVENT_OBJECT_CREATE             0x00008000
3942 #define EVENT_OBJECT_DESTROY            0x00008001
3943 #define EVENT_OBJECT_SHOW               0x00008002
3944 #define EVENT_OBJECT_HIDE               0x00008003
3945 #define EVENT_OBJECT_REORDER            0x00008004
3946 #define EVENT_OBJECT_FOCUS              0x00008005
3947 #define EVENT_OBJECT_SELECTION          0x00008006
3948 #define EVENT_OBJECT_SELECTIONADD       0x00008007
3949 #define EVENT_OBJECT_SELECTIONREMOVE    0x00008008
3950 #define EVENT_OBJECT_SELECTIONWITHIN    0x00008009
3951 #define EVENT_OBJECT_STATECHANGE        0x0000800a
3952 #define EVENT_OBJECT_LOCATIONCHANGE     0x0000800b
3953 #define EVENT_OBJECT_NAMECHANGE         0x0000800c
3954 #define EVENT_OBJECT_DESCRIPTIONCHANGE  0x0000800d
3955 #define EVENT_OBJECT_VALUECHANGE        0x0000800e
3956 #define EVENT_OBJECT_PARENTCHANGE       0x0000800f
3957 #define EVENT_OBJECT_HELPCHANGE         0x00008010
3958 #define EVENT_OBJECT_DEFACTIONCHANGE    0x00008011
3959 #define EVENT_OBJECT_ACCELERATORCHANGE  0x00008012
3960 #define EVENT_MAX                       0x7fffffff
3961 #define LWA_COLORKEY	0x01
3962 #define LWA_ALPHA	0x02
3963 #define ULW_COLORKEY	0x01
3964 #define ULW_ALPHA	0x02
3965 #define ULW_OPAQUE	0x04
3966 #define GR_GDIOBJECTS 0
3967 #define GR_USEROBJECTS 1
3968 #define XBUTTON1 0x0001
3969 #define XBUTTON2 0x0002
3970 
3971 #ifndef RC_INVOKED
3972 typedef struct tagGUITHREADINFO {
3973 	DWORD cbSize;
3974 	DWORD flags;
3975 	HWND hwndActive;
3976 	HWND hwndFocus;
3977 	HWND hwndCapture;
3978 	HWND hwndMenuOwner;
3979 	HWND hwndMoveSize;
3980 	HWND hwndCaret;
3981 	RECT rcCaret;
3982 } GUITHREADINFO,*PGUITHREADINFO,*LPGUITHREADINFO;
3983 typedef VOID (*WINEVENTPROC)(HWINEVENTHOOK,DWORD,HWND,LONG,LONG,DWORD,DWORD);
3984 WINUSERAPI BOOL WINAPI AnimateWindow(HWND,DWORD,DWORD);
3985 WINUSERAPI BOOL WINAPI EndTask(HWND,BOOL,BOOL);
3986 WINUSERAPI DWORD WINAPI GetGuiResources(HANDLE,DWORD);
3987 WINUSERAPI HWND WINAPI GetShellWindow(void);
3988 WINUSERAPI BOOL WINAPI GetGUIThreadInfo(DWORD,LPGUITHREADINFO);
3989 WINUSERAPI BOOL WINAPI GetProcessDefaultLayout(DWORD*);
3990 WINUSERAPI BOOL WINAPI IsHungAppWindow(HWND);
3991 WINUSERAPI BOOL WINAPI LockWorkStation(void);
3992 WINUSERAPI void WINAPI NotifyWinEvent(DWORD,HWND,LONG,LONG);
3993 WINUSERAPI HDEVNOTIFY WINAPI RegisterDeviceNotificationA(HANDLE,LPVOID,DWORD);
3994 WINUSERAPI HDEVNOTIFY WINAPI RegisterDeviceNotificationW(HANDLE,LPVOID,DWORD);
3995 WINUSERAPI BOOL WINAPI SetProcessDefaultLayout(DWORD);
3996 WINUSERAPI HWINEVENTHOOK WINAPI SetWinEventHook(UINT,UINT,HMODULE,WINEVENTPROC,DWORD,DWORD,UINT);
3997 WINUSERAPI VOID WINAPI SwitchToThisWindow(HWND,BOOL);
3998 WINUSERAPI BOOL WINAPI UnhookWinEvent(HWINEVENTHOOK);
3999 WINUSERAPI BOOL WINAPI UserHandleGrantAccess(HANDLE,HANDLE,BOOL);
4000 WINUSERAPI BOOL WINAPI SetLayeredWindowAttributes(HWND,COLORREF,BYTE,DWORD);
4001 
4002 #ifndef NOGDI
4003 WINUSERAPI BOOL WINAPI UpdateLayeredWindow(HWND,HDC,POINT*,SIZE*,HDC,POINT*,COLORREF,BLENDFUNCTION*,DWORD);
4004 #endif /* ! NOGDI */
4005 
4006 #endif /* ! RC_INVOKED */
4007 
4008 #endif /* (_WIN32_WINNT >= 0x0500) */
4009 
4010 #if (_WIN32_WINNT >= 0x0501)
4011 #define BSF_LUID 0x00000400
4012 #define BSF_RETURNHDESK 0x00000200
4013 #define DC_BUTTONS	0x00001000
4014 #define EWX_FORCEIFHUNG 16
4015 #define CS_DROPSHADOW 0x20000
4016 #define QS_ALLEVENTS 1215
4017 #define QS_ALLINPUT 1279
4018 #define QS_INPUT 1031
4019 #define QS_RAWINPUT 1024
4020 #define HSHELL_WINDOWREPLACED 13
4021 #define HSHELL_WINDOWREPLACING 14
4022 #define SPI_GETDROPSHADOW 0x1024
4023 #define SPI_GETFLATMENU 0x1022
4024 #define SPI_GETFOCUSBORDERHEIGHT 0x2010
4025 #define SPI_GETFOCUSBORDERWIDTH 0x200E
4026 #define SPI_GETFONTSMOOTHINGCONTRAST 0x200C
4027 #define SPI_GETFONTSMOOTHINGTYPE 0x200A
4028 #define SPI_GETMOUSECLICKLOCK 0x101E
4029 #define SPI_GETMOUSECLICKLOCKTIME 0x2008
4030 #define SPI_GETMOUSESONAR 0x101C
4031 #define SPI_GETMOUSEVANISH 0x1020
4032 #define SPI_SETDROPSHADOW 0x1025
4033 #define SPI_SETFLATMENU 0x1023
4034 #define SPI_SETFOCUSBORDERHEIGHT 0x2011
4035 #define SPI_SETFOCUSBORDERWIDTH 0x200F
4036 #define SPI_SETFONTSMOOTHINGCONTRAST 0x200D
4037 #define SPI_SETFONTSMOOTHINGTYPE 0x200B
4038 #define SPI_SETMOUSECLICKLOCK 0x101F
4039 #define SPI_SETMOUSECLICKLOCKTIME 0x2009
4040 #define SPI_SETMOUSESONAR 0x101D
4041 #define SPI_SETMOUSEVANISH 0x1021
4042 #define WM_INPUT 0x00FF
4043 #undef WM_KEYLAST
4044 #define WM_KEYLAST 265
4045 #define WM_UNICHAR 265
4046 #define UNICODE_NOCHAR 0xffff
4047 #define WM_XBUTTONDOWN 523
4048 #define WM_XBUTTONUP 524
4049 #define WM_XBUTTONDBLCLK 525
4050 #undef WM_MOUSELAST
4051 #define WM_MOUSELAST 525
4052 #define CB_SETMINVISIBLE 0x1701
4053 #define CB_GETMINVISIBLE 0x1702
4054 #define ICON_SMALL2 2
4055 #define GUI_16BITTASK 0x00000020
4056 #define DEVICE_NOTIFY_ALL_INTERFACE_CLASSES 0x00000004
4057 #define EVENT_CONSOLE_CARET             0x00004001
4058 #define CONSOLE_CARET_SELECTION         0x00000001
4059 #define CONSOLE_CARET_VISIBLE           0x00000002
4060 #define EVENT_CONSOLE_UPDATE_REGION     0x00004002
4061 #define EVENT_CONSOLE_UPDATE_SIMPLE     0x00004003
4062 #define EVENT_CONSOLE_UPDATE_SCROLL     0x00004004
4063 #define EVENT_CONSOLE_LAYOUT            0x00004005
4064 #define EVENT_CONSOLE_START_APPLICATION 0x00004006
4065 #define CONSOLE_APPLICATION_16BIT       0x00000001
4066 #define EVENT_CONSOLE_END_APPLICATION   0x00004007
4067 #define FE_FONTSMOOTHINGSTANDARD  0x0001
4068 #define FE_FONTSMOOTHINGCLEARTYPE 0x0002
4069 #define PW_CLIENTONLY 0x00000001
4070 #define RIM_INPUT     0x00000000
4071 #define RIM_INPUTSINK 0x00000001
4072 #define RIM_TYPEMOUSE    0x00000000
4073 #define RIM_TYPEKEYBOARD 0x00000001
4074 #define RIM_TYPEHID      0x00000002
4075 #define MOUSE_MOVE_RELATIVE      0x00000000
4076 #define MOUSE_MOVE_ABSOLUTE      0x00000001
4077 #define MOUSE_VIRTUAL_DESKTOP    0x00000002
4078 #define MOUSE_ATTRIBUTES_CHANGED 0x00000004
4079 #define RI_MOUSE_LEFT_BUTTON_DOWN   0x0001
4080 #define RI_MOUSE_LEFT_BUTTON_UP     0x0002
4081 #define RI_MOUSE_RIGHT_BUTTON_DOWN  0x0004
4082 #define RI_MOUSE_RIGHT_BUTTON_UP    0x0008
4083 #define RI_MOUSE_MIDDLE_BUTTON_DOWN 0x0010
4084 #define RI_MOUSE_MIDDLE_BUTTON_UP   0x0020
4085 #define RI_MOUSE_BUTTON_1_DOWN      RI_MOUSE_LEFT_BUTTON_DOWN
4086 #define RI_MOUSE_BUTTON_1_UP        RI_MOUSE_LEFT_BUTTON_UP
4087 #define RI_MOUSE_BUTTON_2_DOWN      RI_MOUSE_RIGHT_BUTTON_DOWN
4088 #define RI_MOUSE_BUTTON_2_UP        RI_MOUSE_RIGHT_BUTTON_UP
4089 #define RI_MOUSE_BUTTON_3_DOWN      RI_MOUSE_MIDDLE_BUTTON_DOWN
4090 #define RI_MOUSE_BUTTON_3_UP        RI_MOUSE_MIDDLE_BUTTON_UP
4091 #define RI_MOUSE_BUTTON_4_DOWN      0x0040
4092 #define RI_MOUSE_BUTTON_4_UP        0x0080
4093 #define RI_MOUSE_BUTTON_5_DOWN      0x0100
4094 #define RI_MOUSE_BUTTON_5_UP        0x0200
4095 #define RI_MOUSE_WHEEL              0x0400
4096 #define KEYBOARD_OVERRUN_MAKE_CODE 0x00ff
4097 #define RI_KEY_MAKE            0x0000
4098 #define RI_KEY_BREAK           0x0001
4099 #define RI_KEY_E0              0x0002
4100 #define RI_KEY_E1              0x0004
4101 #define RI_KEY_TERMSRV_SET_LED 0x0008
4102 #define RI_KEY_TERMSRV_SHADOW  0x0010
4103 #define RID_INPUT  0x10000003
4104 #define RID_HEADER 0x10000005
4105 #define RIDI_PREPARSEDDATA 0x20000005
4106 #define RIDI_DEVICENAME    0x20000007
4107 #define RIDI_DEVICEINFO    0x2000000b
4108 #define RIDEV_REMOVE       0x00000001
4109 #define RIDEV_EXCLUDE      0x00000010
4110 #define RIDEV_PAGEONLY     0x00000020
4111 #define RIDEV_NOLEGACY     0x00000030
4112 #define RIDEV_INPUTSINK    0x00000100
4113 #define RIDEV_CAPTUREMOUSE 0x00000200
4114 #define RIDEV_NOHOTKEYS    0x00000200
4115 #define RIDEV_APPKEYS      0x00000400
4116 
4117 #ifndef RC_INVOKED
4118 typedef struct {
4119 	UINT  cbSize;
4120 	HDESK hdesk;
4121 	HWND  hwnd;
4122 	LUID  luid;
4123 } BSMINFO,*PBSMINFO;
4124 DECLARE_HANDLE(HRAWINPUT);
4125 typedef struct tagRAWINPUTHEADER {
4126 	DWORD dwType;
4127 	DWORD dwSize;
4128 	HANDLE hDevice;
4129 	WPARAM wParam;
4130 } RAWINPUTHEADER,*PRAWINPUTHEADER;
4131 typedef struct tagRAWMOUSE {
4132 	USHORT usFlags;
4133 	_ANONYMOUS_UNION union {
4134 		ULONG ulButtons;
4135 		_ANONYMOUS_STRUCT struct {
4136 			USHORT usButtonFlags;
4137 			USHORT usButtonData;
4138 		};
4139 	};
4140 	ULONG ulRawButtons;
4141 	LONG lLastX;
4142 	LONG lLastY;
4143 	ULONG ulExtraInformation;
4144 } RAWMOUSE,*PRAWMOUSE,*LPRAWMOUSE;
4145 typedef struct tagRAWKEYBOARD {
4146 	USHORT MakeCode;
4147 	USHORT Flags;
4148 	USHORT Reserved;
4149 	USHORT VKey;
4150 	UINT Message;
4151 	ULONG ExtraInformation;
4152 } RAWKEYBOARD,*PRAWKEYBOARD,*LPRAWKEYBOARD;
4153 typedef struct tagRAWHID {
4154 	DWORD dwSizeHid;
4155 	DWORD dwCount;
4156 	BYTE bRawData;
4157 } RAWHID,*PRAWHID,*LPRAWHID;
4158 typedef struct tagRAWINPUT {
4159 	RAWINPUTHEADER header;
4160 	union {
4161 		RAWMOUSE    mouse;
4162 		RAWKEYBOARD keyboard;
4163 		RAWHID      hid;
4164 	} data;
4165 } RAWINPUT,*PRAWINPUT,*LPRAWINPUT;
4166 typedef struct tagRAWINPUTDEVICE {
4167 	USHORT usUsagePage;
4168 	USHORT usUsage;
4169 	DWORD dwFlags;
4170 	HWND hwndTarget;
4171 } RAWINPUTDEVICE,*PRAWINPUTDEVICE,*LPRAWINPUTDEVICE;
4172 typedef const RAWINPUTDEVICE *PCRAWINPUTDEVICE;
4173 typedef struct tagRAWINPUTDEVICELIST {
4174 	HANDLE hDevice;
4175 	DWORD dwType;
4176 } RAWINPUTDEVICELIST,*PRAWINPUTDEVICELIST;
4177 typedef struct tagRID_DEVICE_INFO_MOUSE {
4178 	DWORD dwId;
4179 	DWORD dwNumberOfButtons;
4180 	DWORD dwSampleRate;
4181 	BOOL fHasHorizontalWheel;
4182 } RID_DEVICE_INFO_MOUSE, *PRID_DEVICE_INFO_MOUSE;
4183 typedef struct tagRID_DEVICE_INFO_KEYBOARD {
4184 	DWORD dwType;
4185 	DWORD dwSubType;
4186 	DWORD dwKeyboardMode;
4187 	DWORD dwNumberOfFunctionKeys;
4188 	DWORD dwNumberOfIndicators;
4189 	DWORD dwNumberOfKeysTotal;
4190 } RID_DEVICE_INFO_KEYBOARD, *PRID_DEVICE_INFO_KEYBOARD;
4191 typedef struct tagRID_DEVICE_INFO_HID {
4192 	DWORD dwVendorId;
4193 	DWORD dwProductId;
4194 	DWORD dwVersionNumber;
4195 	USHORT usUsagePage;
4196 	USHORT usUsage;
4197 } RID_DEVICE_INFO_HID, *PRID_DEVICE_INFO_HID;
4198 typedef struct tagRID_DEVICE_INFO {
4199 	DWORD    cbSize;
4200 	DWORD    dwType;
4201 	_ANONYMOUS_UNION union {
4202 		RID_DEVICE_INFO_MOUSE     mouse;
4203 		RID_DEVICE_INFO_KEYBOARD  keyboard;
4204 		RID_DEVICE_INFO_HID       hid;
4205 	} DUMMYUNIONNAME;
4206 } RID_DEVICE_INFO, *PRID_DEVICE_INFO, *LPRID_DEVICE_INFO;
4207 WINUSERAPI long WINAPI BroadcastSystemMessageExA(DWORD,LPDWORD,UINT,WPARAM,LPARAM,PBSMINFO);
4208 WINUSERAPI long WINAPI BroadcastSystemMessageExW(DWORD,LPDWORD,UINT,WPARAM,LPARAM,PBSMINFO);
4209 WINUSERAPI LRESULT WINAPI DefRawInputProc(PRAWINPUT*,INT,UINT);
4210 WINUSERAPI UINT WINAPI GetRawInputBuffer(PRAWINPUT,PUINT,UINT);
4211 WINUSERAPI UINT WINAPI GetRawInputData(HRAWINPUT,UINT,LPVOID,PUINT,UINT);
4212 WINUSERAPI UINT WINAPI GetRawInputDeviceInfoA(HANDLE,UINT,LPVOID,PUINT);
4213 WINUSERAPI UINT WINAPI GetRawInputDeviceInfoW(HANDLE,UINT,LPVOID,PUINT);
4214 WINUSERAPI UINT WINAPI GetRawInputDeviceList(PRAWINPUTDEVICELIST,PUINT,UINT);
4215 WINUSERAPI UINT WINAPI GetRegisteredRawInputDevices(PRAWINPUTDEVICE,PUINT,UINT);
4216 WINUSERAPI BOOL WINAPI IsGUIThread(BOOL);
4217 WINUSERAPI BOOL WINAPI IsWinEventHookInstalled(DWORD);
4218 WINUSERAPI BOOL WINAPI PrintWindow(HWND,HDC,UINT);
4219 WINUSERAPI BOOL WINAPI RegisterRawInputDevices(PCRAWINPUTDEVICE,UINT,UINT);
4220 WINUSERAPI BOOL WINAPI GetLayeredWindowAttributes(HWND,COLORREF*,BYTE*,DWORD*);
4221 #endif /* ! RC_INVOKED */
4222 
4223 #else
4224 
4225 #define QS_ALLEVENTS 191
4226 #define QS_ALLINPUT 255
4227 #define QS_INPUT 7
4228 #endif /* (_WIN32_WINNT >= 0x0501) */
4229 
4230 #if (_WIN32_WINNT >= 0x0600)
4231 #define PBT_POWERSETTINGCHANGE	32787
4232 
4233 #ifndef RC_INVOKED
4234 typedef HANDLE HPOWERNOTIFY;
4235 
4236 typedef struct {
4237 	GUID PowerSetting;
4238 	DWORD DataLength;
4239 	UCHAR Data[1];
4240 } POWERBROADCAST_SETTING, *PPOWERBROADCAST_SETTING;
4241 
4242 extern const GUID GUID_POWERSCHEME_PERSONALITY;
4243 extern const GUID GUID_MIN_POWER_SAVINGS;
4244 extern const GUID GUID_MAX_POWER_SAVINGS;
4245 extern const GUID GUID_TYPICAL_POWER_SAVINGS;
4246 extern const GUID GUID_ACDC_POWER_SOURCE;
4247 extern const GUID GUID_BATTERY_PERCENTAGE_REMAINING;
4248 extern const GUID GUID_IDLE_BACKGROUND_TASK;
4249 extern const GUID GUID_SYSTEM_AWAYMODE;
4250 extern const GUID GUID_MONITOR_POWER_ON;
4251 WINUSERAPI HPOWERNOTIFY WINAPI RegisterPowerSettingNotification(HANDLE,LPCGUID,DWORD);
4252 WINUSERAPI BOOL WINAPI UnregisterPowerSettingNotification(HPOWERNOTIFY);
4253 #endif /* ! RC_INVOKED */
4254 
4255 #endif /* (_WIN32_WINNT >= 0x0600) */
4256 
4257 #if (_WIN32_WINNT >= 0x0601)
4258 #define WM_TOUCHMOVE 576
4259 #define WM_TOUCHDOWN 577
4260 #define WM_TOUCHUP 578
4261 #define TOUCHEVENTF_DOWN	    0x0001
4262 #define TOUCHEVENTF_INRANGE	    0x0008
4263 #define TOUCHEVENTF_MOVE	    0x0002
4264 #define TOUCHEVENTF_NOCOALESCE	0x0020
4265 #define TOUCHEVENTF_PALM	    0x0080
4266 #define TOUCHEVENTF_PEN	        0x0040
4267 #define TOUCHEVENTF_PRIMARY	    0x0010
4268 #define TOUCHEVENTF_UP	        0x0004
4269 #define TOUCHEVENTMASKF_CONTACTAREA	    0x0004
4270 #define TOUCHEVENTMASKF_EXTRAINFO	    0x0002
4271 #define TOUCHEVENTMASKF_TIMEFROMSYSTEM	0x0001
4272 
4273 #ifndef RC_INVOKED
4274 typedef struct _TOUCHINPUT {
4275   LONG x;
4276   LONG y;
4277   HANDLE hSource;
4278   DWORD dwID;
4279   DWORD dwFlags;
4280   DWORD dwMask;
4281   DWORD dwTime;
4282   ULONG_PTR dwExtraInfo;
4283   DWORD cxContact;
4284   DWORD cyContact;
4285 } TOUCHINPUT,
4286  *PTOUCHINPUT;
4287 BOOL WINAPI CloseTouchInputHandle(HANDLE hTouchInput);
4288 BOOL WINAPI GetTouchInputInfo(HANDLE hTouchInput, UINT cInputs, PTOUCHINPUT pInputs, int cbSize);
4289 BOOL WINAPI IsTouchWindow(HWND hWnd, PULONG pulFlags);
4290 BOOL WINAPI RegisterTouchWindow(HWND hWnd, ULONG ulFlags);
4291 BOOL WINAPI UnregisterTouchWindow(HWND hWnd);
4292 #endif /* ! RC_INVOKED */
4293 
4294 #endif /* (_WIN32_WINNT >= 0x0601) */
4295 
4296 #ifdef __cplusplus
4297 }
4298 #endif
4299 
4300 #endif
4301