+FSCTL_DISMOUNT_VOLUME define
[reactos.git] / include / defines.h
1 /*
2    Defines.h
3
4    Windows32 API definitions
5
6    Copyright (C) 1996, 1997 Free Software Foundation, Inc.
7
8    Author: Scott Christley <scottc@net-community.com>
9
10    This file is part of the Windows32 API Library.
11
12    This library is free software; you can redistribute it and/or
13    modify it under the terms of the GNU Library General Public
14    License as published by the Free Software Foundation; either
15    version 2 of the License, or (at your option) any later version.
16    
17    This library is distributed in the hope that it will be useful,
18    but WITHOUT ANY WARRANTY; without even the implied warranty of
19    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
20    Library General Public License for more details.
21
22    If you are interested in a warranty or support for this source code,
23    contact Scott Christley <scottc@net-community.com> for more information.
24    
25    You should have received a copy of the GNU Library General Public
26    License along with this library; see the file COPYING.LIB.
27    If not, write to the Free Software Foundation, 
28    59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
29 */
30 /* WARNING:  This file is automatically generated. */
31
32 #ifndef _GNU_H_WINDOWS32_DEFINES
33 #define _GNU_H_WINDOWS32_DEFINES
34
35 #ifndef RC_INVOKED
36 #include <ntos/ntdef.h>
37 #include <ntos/registry.h>
38 #endif
39
40 #define WINBASEAPI
41
42
43
44 #ifndef WIN32_NO_STATUS
45 //#define STATUS_WAIT_0                 (0x00000000L)
46 //#define STATUS_ABANDONED_WAIT_0       (0x00000080L)
47 //#define STATUS_USER_APC               (0x000000C0L)
48 //#define STATUS_TIMEOUT                (0x00000102L)
49 //#define STATUS_PENDING                (0x00000103L)
50 #endif /* WIN32_NO_STATUS */
51
52 #define GA_PARENT               (1)
53 #define GA_ROOT                 (2)
54 #define GA_ROOTOWNER            (3)
55
56 /* CreateFile, GetFileAttributes, SetFileAttributes */
57
58 #define SECURITY_ANONYMOUS      (0)
59 #define SECURITY_IDENTIFICATION (65536)
60 #define SECURITY_IMPERSONATION  (131072)
61 #define SECURITY_DELEGATION     (196608)
62 #define SECURITY_CONTEXT_TRACKING       (262144)
63 #define SECURITY_EFFECTIVE_ONLY (524288)
64 #define SECURITY_SQOS_PRESENT   (1048576)
65
66
67
68
69 #ifndef WIN32_LEAN_AND_MEAN
70
71 #ifdef __cplusplus
72 extern "C" {
73 #endif /* __cplusplus */
74
75 #define MAX_PATH        (260)
76 #define UNICODE_NULL ((WCHAR)0)
77 #define LF_FACESIZE     (32)
78 #define LF_FULLFACESIZE (64)
79 #define ELF_VENDOR_SIZE (4)
80 #define MAX_DEFAULTCHAR (2)
81 #define MAX_LEADBYTES   (12)
82 #define MENU_TEXT_LEN   (40)
83 #define MAX_LANA        (254)
84 #define NCBNAMSZ        (16)
85 #define NETBIOS_NAME_LEN        (16)
86 #define OFS_MAXPATHNAME (128)
87 #define MAX_TAB_STOPS   (32)
88 #define RAS_MaxCallbackNumber   (128)
89 #define RAS_MaxDeviceName       (128)
90 #define RAS_MaxDeviceType       (16)
91 #define RAS_MaxEntryName        (256)
92 #define RAS_MaxIpAddress        (15)
93 #define RAS_MaxIpxAddress       (21)
94 #define RAS_MaxPhoneNumber      (128)
95 #define UNLEN   (256)
96 #define PWLEN   (256)
97 #define CNLEN   (15)
98 #define DNLEN   (15)
99 /* Unsigned types max */
100 #define MAXDWORD         (0xFFFFFFFF)
101 #define MAXWORD          (0xFFFF)
102 #define MAXBYTE          (0xFF)
103 /* Signed types max/min */
104 #define MINCHAR          (0x80)
105 #define MAXCHAR          (0x7F)
106 #define MINSHORT         (0x8000)
107 #define MAXSHORT         (0x7FFF)
108 #define MINLONG          (0x80000000)
109 #define MAXLONG          (0x7FFFFFFF)
110
111 /* _llseek */
112 #define FILE_BEGIN      (0)
113 #define FILE_CURRENT    (1)
114 #define FILE_END        (2)
115
116 /* _lopen, LZOpenFile, OpenFile */
117 #define OF_READ (0)
118 #define OF_READWRITE    (2)
119 #define OF_WRITE        (1)
120 #define OF_SHARE_COMPAT (0)
121 #define OF_SHARE_DENY_NONE      (64)
122 #define OF_SHARE_DENY_READ      (48)
123 #define OF_SHARE_DENY_WRITE     (32)
124 #define OF_SHARE_EXCLUSIVE      (16)
125 #define OF_CANCEL       (2048)
126 #define OF_CREATE       (4096)
127 #define OF_DELETE       (512)
128 #define OF_EXIST        (16384)
129 #define OF_PARSE        (256)
130 #define OF_PROMPT       (8192)
131 #define OF_REOPEN       (32768)
132 #define OF_VERIFY       (1024)
133
134 /* ActivateKeyboardLayout, LoadKeyboardLayout */
135 #define HKL_NEXT        (1)
136 #define HKL_PREV        (0)
137 #define KLF_REORDER     (8)
138 #define KLF_UNLOADPREVIOUS      (4)
139 #define KLF_ACTIVATE    (1)
140 #define KLF_NOTELLSHELL (128)
141 #define KLF_REPLACELANG (16)
142 #define KLF_SUBSTITUTE_OK       (2)
143
144 /* AppendMenu */
145 #define MF_BITMAP       (0x4L)
146 #define MF_DISABLED     (0x2L)
147 #define MF_ENABLED      (0L)
148 #define MF_GRAYED       (0x1L)
149 #define MF_HELP         (0x4000L)
150 #define MF_MENUBARBREAK (0x20L)
151 #define MF_MENUBREAK    (0x40L)
152 #define MF_MOUSESELECT  (0x8000L)
153 #define MF_OWNERDRAW    (0x100L)
154 #define MF_POPUP        (0x10L)
155 #define MF_SEPARATOR    (0x800L)
156 #define MF_STRING       (0L)
157 #define MF_SYSMENU      (0x2000L)
158 #define MF_USECHECKBITMAPS      (0x200L)
159
160 /* Ternary Raster Operations - BitBlt */
161 #define BLACKNESS       0x00000042
162 #define NOTSRCERASE     0x001100A6
163 #define NOTSRCCOPY      0x00330008
164 #define SRCERASE        0x00440328
165 #define DSTINVERT       0x00550009
166 #define PATINVERT       0x005A0049
167 #define SRCINVERT       0x00660046
168 #define SRCAND  0x008800C6
169 #define MERGEPAINT      0x00BB0226
170 #define MERGECOPY       0x00C000CA
171 #define SRCCOPY 0x00CC0020
172 #define SRCPAINT        0x00EE0086
173 #define PATCOPY 0x00F00021
174 #define PATPAINT        0x00FB0A09
175 #define WHITENESS       0x00FF0062
176
177 /* Binary Raster Operations */
178 #define R2_BLACK        (1)
179 #define R2_COPYPEN      (13)
180 #define R2_MASKNOTPEN   (3)
181 #define R2_MASKPEN      (9)
182 #define R2_MASKPENNOT   (5)
183 #define R2_MERGENOTPEN  (12)
184 #define R2_MERGEPEN     (15)
185 #define R2_MERGEPENNOT  (14)
186 #define R2_NOP  (11)
187 #define R2_NOT  (6)
188 #define R2_NOTCOPYPEN   (4)
189 #define R2_NOTMASKPEN   (8)
190 #define R2_NOTMERGEPEN  (2)
191 #define R2_NOTXORPEN    (10)
192 #define R2_WHITE        (16)
193 #define R2_XORPEN       (7)
194
195 /* BroadcastSystemMessage */
196 #define BSF_FLUSHDISK   (4)
197 #define BSF_FORCEIFHUNG (32)
198 #define BSF_IGNORECURRENTTASK   (2)
199 #define BSF_NOHANG      (8)
200 #define BSF_POSTMESSAGE (16)
201 #define BSF_QUERY       (1)
202 #define BSM_ALLCOMPONENTS       (0)
203 #define BSM_APPLICATIONS        (8)
204 #define BSM_INSTALLABLEDRIVERS  (4)
205 #define BSM_NETDRIVER   (2)
206 #define BSM_VXDS        (1)
207 #define BROADCAST_QUERY_DENY    (1112363332)
208
209 /* BrowseCallbackProc */
210
211 /* CallNamedPipe */
212 #define NMPWAIT_NOWAIT  (1)
213 #define NMPWAIT_WAIT_FOREVER    (-1)
214 #define NMPWAIT_USE_DEFAULT_WAIT        (0)
215
216 /* CascadeWindows, TileWindows */
217 #define MDITILE_SKIPDISABLED    (2)
218 #define MDITILE_HORIZONTAL      (1)
219 #define MDITILE_VERTICAL        (0)
220
221 /* CBTProc */
222 #define HCBT_ACTIVATE   (5)
223 #define HCBT_CLICKSKIPPED       (6)
224 #define HCBT_CREATEWND  (3)
225 #define HCBT_DESTROYWND (4)
226 #define HCBT_KEYSKIPPED (7)
227 #define HCBT_MINMAX     (1)
228 #define HCBT_MOVESIZE   (0)
229 #define HCBT_QS (2)
230 #define HCBT_SETFOCUS   (9)
231 #define HCBT_SYSCOMMAND (8)
232
233 /* ChangeDisplaySettings */
234 #define DM_BITSPERPEL   (0x40000L)
235 #define DM_PELSWIDTH    (0x80000L)
236 #define DM_PELSHEIGHT   (0x100000L)
237 #define DM_DISPLAYFLAGS (0x200000L)
238 #define DM_DISPLAYFREQUENCY     (0x400000L)
239 #define CDS_UPDATEREGISTRY      (1)
240 #define CDS_TEST        (2)
241 #define DISP_CHANGE_SUCCESSFUL  (0)
242 #define DISP_CHANGE_RESTART     (1)
243 #define DISP_CHANGE_BADFLAGS    (-4)
244 #define DISP_CHANGE_FAILED      (-1)
245 #define DISP_CHANGE_BADMODE     (-2)
246 #define DISP_CHANGE_NOTUPDATED  (-3)
247
248 /* ChangeServiceConfig */
249 #define SERVICE_NO_CHANGE       (-1)
250 #define SERVICE_KERNEL_DRIVER           (1)
251 #define SERVICE_FILE_SYSTEM_DRIVER      (2)
252 #define SERVICE_RECOGNIZER_DRIVER       (8)
253 #define SERVICE_WIN32_OWN_PROCESS       (16)
254 #define SERVICE_WIN32_SHARE_PROCESS     (32)
255 #define SERVICE_INTERACTIVE_PROCESS     (256)
256 #define SERVICE_BOOT_START      (0)
257 #define SERVICE_SYSTEM_START    (1)
258 #define SERVICE_AUTO_START      (2)
259 #define SERVICE_DEMAND_START    (3)
260 #define SERVICE_DISABLED        (4)
261
262 /* SERVICE_STATUS structure */
263 #define SERVICE_STOPPED (1)
264 #define SERVICE_START_PENDING   (2)
265 #define SERVICE_STOP_PENDING    (3)
266 #define SERVICE_RUNNING (4)
267 #define SERVICE_CONTINUE_PENDING        (5)
268 #define SERVICE_PAUSE_PENDING   (6)
269 #define SERVICE_PAUSED  (7)
270 #define SERVICE_ACCEPT_STOP     (1)
271 #define SERVICE_ACCEPT_PAUSE_CONTINUE   (2)
272 #define SERVICE_ACCEPT_SHUTDOWN (4)
273
274 /* CheckDlgButton */
275 #define BST_CHECKED     (1)
276 #define BST_INDETERMINATE       (2)
277 #define BST_UNCHECKED   (0)
278 #define BST_FOCUS       (8)
279 #define BST_PUSHED      (4)
280
281 /* CheckMenuItem, HiliteMenuItem */
282 #define MF_BYCOMMAND    (0L)
283 #define MF_BYPOSITION   (0x400L)
284 #define MF_CHECKED      (0x8L)
285 #define MF_UNCHECKED    (0L)
286 #define MF_HILITE       (0x80L)
287 #define MF_UNHILITE     (0L)
288
289 /* ChildWindowFromPointEx */
290 #define CWP_ALL (0)
291 #define CWP_SKIPINVISIBLE       (1)
292 #define CWP_SKIPDISABLED        (2)
293 #define CWP_SKIPTRANSPARENT     (4)
294
295 /* ClearCommError */
296 #define CE_BREAK        (16)
297 #define CE_DNS  (2048)
298 #define CE_FRAME        (8)
299 #define CE_IOE  (1024)
300 #define CE_MODE (32768)
301 #define CE_OOP  (4096)
302 #define CE_OVERRUN      (2)
303 #define CE_PTO  (512)
304 #define CE_RXOVER       (1)
305 #define CE_RXPARITY     (4)
306 #define CE_TXFULL       (256)
307
308 /* ChooseMatchToTarget */
309
310 /* CombineRgn */
311 #define RGN_AND (1)
312 #define RGN_COPY        (5)
313 #define RGN_DIFF        (4)
314 #define RGN_OR  (2)
315 #define RGN_XOR (3)
316 #define NULLREGION      (1)
317 #define SIMPLEREGION    (2)
318 #define COMPLEXREGION   (3)
319 #define ERROR   (0)
320
321 /* CommonDlgExtendedError */
322 #define CDERR_DIALOGFAILURE     (0xffff)
323 #define CDERR_FINDRESFAILURE    (6)
324 #define CDERR_INITIALIZATION    (2)
325 #define CDERR_LOADRESFAILURE    (7)
326 #define CDERR_LOADSTRFAILURE    (5)
327 #define CDERR_LOCKRESFAILURE    (8)
328 #define CDERR_MEMALLOCFAILURE   (9)
329 #define CDERR_MEMLOCKFAILURE    (10)
330 #define CDERR_NOHINSTANCE       (4)
331 #define CDERR_NOHOOK            (11)
332 #define CDERR_NOTEMPLATE        (3)
333 #define CDERR_REGISTERMSGFAIL   (12)
334 #define CDERR_STRUCTSIZE        (1)
335 #define PDERR_CREATEICFAILURE   (0x1000 + 10)
336 #define PDERR_DEFAULTDIFFERENT  (0x1000 + 12)
337 #define PDERR_DNDMMISMATCH      (0x1000 + 9)
338 #define PDERR_GETDEVMODEFAIL    (0x1000 + 5)
339 #define PDERR_INITFAILURE       (0x1000 + 6)
340 #define PDERR_LOADDRVFAILURE    (0x1000 + 4)
341 #define PDERR_NODEFAULTPRN      (0x1000 + 8)
342 #define PDERR_NODEVICES         (0x1000 + 7)
343 #define PDERR_PARSEFAILURE      (0x1000 + 2)
344 #define PDERR_PRINTERNOTFOUND   (0x1000 + 11)
345 #define PDERR_RETDEFFAILURE     (0x1000 + 3)
346 #define PDERR_SETUPFAILURE      (0x1000 + 1)
347 #define CFERR_MAXLESSTHANMIN    (0x2000 + 2)
348 #define CFERR_NOFONTS           (0x2000 + 1)
349 #define FNERR_BUFFERTOOSMALL    (0x3000 + 3)
350 #define FNERR_INVALIDFILENAME   (0x3000 + 2)
351 #define FNERR_SUBCLASSFAILURE   (0x3000 + 1)
352 #define FRERR_BUFFERLENGTHZERO  (0x4000 + 1)
353
354 /* CompareString, LCMapString */
355 #define LOCALE_SYSTEM_DEFAULT   (0x800L)
356 #define LOCALE_USER_DEFAULT     (0x400L)
357 #define NORM_IGNORECASE (1)
358 #define NORM_IGNOREKANATYPE     (65536)
359 #define NORM_IGNORENONSPACE     (2)
360 #define NORM_IGNORESYMBOLS      (4)
361 #define NORM_IGNOREWIDTH        (131072)
362 #define SORT_STRINGSORT (4096)
363 #define LCMAP_BYTEREV   (2048)
364 #define LCMAP_FULLWIDTH (8388608)
365 #define LCMAP_HALFWIDTH (4194304)
366 #define LCMAP_HIRAGANA  (1048576)
367 #define LCMAP_KATAKANA  (2097152)
368 #define LCMAP_LOWERCASE (256)
369 #define LCMAP_SORTKEY   (1024)
370 #define LCMAP_UPPERCASE (512)
371
372 /* ContinueDebugEvent */
373 #define DBG_CONTINUE    (0x10002L)
374 #define DBG_CONTROL_BREAK       (0x40010008L)
375 #define DBG_CONTROL_C   (0x40010005L)
376 #define DBG_EXCEPTION_NOT_HANDLED       (0x80010001L)
377 #define DBG_TERMINATE_THREAD            (0x40010003L)
378 #define DBG_TERMINATE_PROCESS           (0x40010004L)
379
380 /* ControlService */
381 #define SERVICE_CONTROL_STOP    (1)
382 #define SERVICE_CONTROL_PAUSE   (2)
383 #define SERVICE_CONTROL_CONTINUE        (3)
384 #define SERVICE_CONTROL_INTERROGATE     (4)
385 #define SERVICE_CONTROL_SHUTDOWN        (5)
386
387 /* CopyImage, LoadImage */
388 #define IMAGE_BITMAP    (0)
389 #define IMAGE_CURSOR    (2)
390 #define IMAGE_ENHMETAFILE       (1)
391 #define IMAGE_ICON      (1)
392 #define LR_COPYDELETEORG        (8)
393 #define LR_COPYRETURNORG        (4)
394 #define LR_MONOCHROME   (1)
395 #define LR_CREATEDIBSECTION     (8192)
396 #define LR_DEFAULTSIZE  (64)
397
398 /* CreateDesktop */
399 #define DF_ALLOWOTHERACCOUNTHOOK        (0x1L)
400 #define DESKTOP_CREATEMENU      (0x4L)
401 #define DESKTOP_CREATEWINDOW    (0x2L)
402 #define DESKTOP_ENUMERATE       (0x40L)
403 #define DESKTOP_HOOKCONTROL     (0x8L)
404 #define DESKTOP_JOURNALPLAYBACK (0x20L)
405 #define DESKTOP_JOURNALRECORD   (0x10L)
406 #define DESKTOP_READOBJECTS     (0x1L)
407 #define DESKTOP_SWITCHDESKTOP   (0x100L)
408 #define DESKTOP_WRITEOBJECTS    (0x80L)
409 #define WSF_VISIBLE     (0x1L)
410
411 /* CreateDIBitmap */
412 #define CBM_INIT        (0x4L)
413 #define DIB_PAL_COLORS  (1)
414 #define DIB_RGB_COLORS  (0)
415
416 /* CreateFileMapping, VirtualAlloc, VirtualFree, VirtualProtect */
417
418 /* CreateFont */
419 #define FW_DONTCARE     (0)
420 #define FW_THIN (100)
421 #define FW_EXTRALIGHT   (200)
422 #define FW_LIGHT        (300)
423 #define FW_NORMAL       (400)
424 #define FW_REGULAR FW_NORMAL
425 #define FW_MEDIUM       (500)
426 #define FW_SEMIBOLD     (600)
427 #define FW_BOLD (700)
428 #define FW_EXTRABOLD    (800)
429 #define FW_HEAVY        (900)
430 #define ANSI_CHARSET    (0)
431 #define DEFAULT_CHARSET (1)
432 #define SYMBOL_CHARSET  (2)
433 #define SHIFTJIS_CHARSET        (128)
434 #define HANGEUL_CHARSET (129)
435 #define GB2312_CHARSET  (134)
436 #define CHINESEBIG5_CHARSET     (136)
437 #define GREEK_CHARSET   (161)
438 #define TURKISH_CHARSET (162)
439 #define HEBREW_CHARSET  (177)
440 #define ARABIC_CHARSET  (178)
441 #define BALTIC_CHARSET  (186)
442 #define RUSSIAN_CHARSET (204)
443 #define THAI_CHARSET    (222)
444 #define EASTEUROPE_CHARSET      (238)
445 #define OEM_CHARSET     (255)
446 #define OUT_DEFAULT_PRECIS      (0)
447 #define OUT_STRING_PRECIS       (1)
448 #define OUT_CHARACTER_PRECIS    (2)
449 #define OUT_STROKE_PRECIS       (3)
450 #define OUT_TT_PRECIS   (4)
451 #define OUT_DEVICE_PRECIS       (5)
452 #define OUT_RASTER_PRECIS       (6)
453 #define OUT_TT_ONLY_PRECIS      (7)
454 #define OUT_OUTLINE_PRECIS      (8)
455 #define CLIP_DEFAULT_PRECIS     (0)
456 #define CLIP_CHARACTER_PRECIS   (1)
457 #define CLIP_STROKE_PRECIS      (2)
458 #define CLIP_MASK       (15)
459 #define CLIP_LH_ANGLES  (16)
460 #define CLIP_TT_ALWAYS  (32)
461 #define CLIP_EMBEDDED   (128)
462 #define DEFAULT_QUALITY (0)
463 #define DRAFT_QUALITY   (1)
464 #define PROOF_QUALITY   (2)
465 #define DEFAULT_PITCH   (0)
466 #define FIXED_PITCH     (1)
467 #define VARIABLE_PITCH  (2)
468 #define FF_DECORATIVE   (80)
469 #define FF_DONTCARE     (0)
470 #define FF_MODERN       (48)
471 #define FF_ROMAN        (16)
472 #define FF_SCRIPT       (64)
473 #define FF_SWISS        (32)
474
475 /* CreateHatchBrush */
476 #define HS_BDIAGONAL    (3)
477 #define HS_CROSS        (4)
478 #define HS_DIAGCROSS    (5)
479 #define HS_FDIAGONAL    (2)
480 #define HS_HORIZONTAL   (0)
481 #define HS_VERTICAL     (1)
482
483 /* CreateIconFromResourceEx */
484 #define LR_DEFAULTCOLOR (0)
485 #define LR_LOADREALSIZE (128)
486 #define LR_MONOCHROME   (1)
487
488 /* CreateMailslot, GetMailslotInfo */
489 #define MAILSLOT_WAIT_FOREVER   (0xffffffffL)
490 #define MAILSLOT_NO_MESSAGE     (0xffffffffL)
491
492 /* CreateMappedBitmap */
493 #define CMB_MASKED      (2)
494
495 /* CreateNamedPipe */
496 #define PIPE_ACCESS_DUPLEX      (3)
497 #define PIPE_ACCESS_INBOUND     (1)
498 #define PIPE_ACCESS_OUTBOUND    (2)
499 #define WRITE_DAC       (0x40000L)
500 #define WRITE_OWNER     (0x80000L)
501 #define ACCESS_SYSTEM_SECURITY  (0x1000000L)
502 #define PIPE_TYPE_BYTE  (0)
503 #define PIPE_TYPE_MESSAGE       (4)
504 #define PIPE_READMODE_BYTE      (0)
505 #define PIPE_READMODE_MESSAGE   (2)
506 #define PIPE_WAIT       (0)
507 #define PIPE_NOWAIT     (1)
508 #define PIPE_UNLIMITED_INSTANCES (255)
509
510 /* CreatePen, ExtCreatePen */
511 #define PS_GEOMETRIC    (65536)
512 #define PS_COSMETIC     (0)
513 #define PS_ALTERNATE    (8)
514 #define PS_SOLID        (0)
515 #define PS_DASH (1)
516 #define PS_DOT  (2)
517 #define PS_DASHDOT      (3)
518 #define PS_DASHDOTDOT   (4)
519 #define PS_NULL (5)
520 #define PS_USERSTYLE    (7)
521 #define PS_INSIDEFRAME  (6)
522 #define PS_ENDCAP_ROUND (0)
523 #define PS_ENDCAP_SQUARE        (256)
524 #define PS_ENDCAP_FLAT  (512)
525 #define PS_JOIN_BEVEL   (4096)
526 #define PS_JOIN_MITER   (8192)
527 #define PS_JOIN_ROUND   (0)
528 #define PS_STYLE_MASK   (15)
529 #define PS_ENDCAP_MASK  (3840)
530 #define PS_TYPE_MASK    (983040)
531
532 /* CreatePolygonRgn */
533 #define ALTERNATE       (1)
534 #define WINDING (2)
535
536
537 /* CreateService */
538 #define SERVICE_ALL_ACCESS      (0xf01ffL)
539 #define SERVICE_CHANGE_CONFIG   (2)
540 #define SERVICE_ENUMERATE_DEPENDENTS    (8)
541 #define SERVICE_INTERROGATE     (128)
542 #define SERVICE_PAUSE_CONTINUE  (64)
543 #define SERVICE_QUERY_CONFIG    (1)
544 #define SERVICE_QUERY_STATUS    (4)
545 #define SERVICE_START   (16)
546 #define SERVICE_STOP    (32)
547 #define SERVICE_USER_DEFINED_CONTROL    (256)
548 #define SERVICE_WIN32_OWN_PROCESS       (16)
549 #define SERVICE_WIN32_SHARE_PROCESS     (32)
550 #define SERVICE_KERNEL_DRIVER   (1)
551 #define SERVICE_FILE_SYSTEM_DRIVER      (2)
552 #define SERVICE_INTERACTIVE_PROCESS     (256)
553 #define SERVICE_BOOT_START      (0)
554 #define SERVICE_SYSTEM_START    (1)
555 #define SERVICE_AUTO_START      (2)
556 #define SERVICE_DEMAND_START    (3)
557 #define SERVICE_DISABLED        (4)
558 #define SERVICE_ERROR_IGNORE    (0)
559 #define SERVICE_ERROR_NORMAL    (1)
560 #define SERVICE_ERROR_SEVERE    (2)
561 #define SERVICE_ERROR_CRITICAL  (3)
562
563 /* CreateTapePartition, WriteTapemark */
564 #define TAPE_FIXED_PARTITIONS   (0L)
565 #define TAPE_INITIATOR_PARTITIONS       (0x2L)
566 #define TAPE_SELECT_PARTITIONS  (0x1L)
567 #define TAPE_FILEMARKS  (0x1L)
568 #define TAPE_LONG_FILEMARKS     (0x3L)
569 #define TAPE_SETMARKS   (0L)
570 #define TAPE_SHORT_FILEMARKS    (0x2L)
571
572 /* CreateWindow */
573 #define CW_USEDEFAULT   (0x80000000L)
574 #define WS_BORDER       (0x800000L)
575 #define WS_CAPTION      (0xc00000L)
576 #define WS_CHILD        (0x40000000L)
577 #define WS_CHILDWINDOW  (0x40000000L)
578 #define WS_CLIPCHILDREN (0x2000000L)
579 #define WS_CLIPSIBLINGS (0x4000000L)
580 #define WS_DISABLED     (0x8000000L)
581 #define WS_DLGFRAME     (0x400000L)
582 #define WS_GROUP        (0x20000L)
583 #define WS_HSCROLL      (0x100000L)
584 #define WS_ICONIC       (0x20000000L)
585 #define WS_MAXIMIZE     (0x1000000L)
586 #define WS_MAXIMIZEBOX  (0x10000L)
587 #define WS_MINIMIZE     (0x20000000L)
588 #define WS_MINIMIZEBOX  (0x20000L)
589 #define WS_OVERLAPPED   (0L)
590 #define WS_OVERLAPPEDWINDOW     (0xcf0000L)
591 #define WS_POPUP        (0x80000000L)
592 #define WS_POPUPWINDOW  (0x80880000L)
593 #define WS_SIZEBOX      (0x40000L)
594 #define WS_SYSMENU      (0x80000L)
595 #define WS_TABSTOP      (0x10000L)
596 #define WS_THICKFRAME   (0x40000L)
597 #define WS_TILED        (0L)
598 #define WS_TILEDWINDOW  (0xcf0000L)
599 #define WS_VISIBLE      (0x10000000L)
600 #define WS_VSCROLL      (0x200000L)
601 #define MDIS_ALLCHILDSTYLES     (0x1)
602 #define BS_3STATE       (0x5L)
603 #define BS_AUTO3STATE   (0x6L)
604 #define BS_AUTOCHECKBOX (0x3L)
605 #define BS_AUTORADIOBUTTON      (0x9L)
606 #define BS_BITMAP       (0x80L)
607 #define BS_BOTTOM       (0x800L)
608 #define BS_CENTER       (0x300L)
609 #define BS_CHECKBOX     (0x2L)
610 #define BS_DEFPUSHBUTTON        (0x1L)
611 #define BS_GROUPBOX     (0x7L)
612 #define BS_ICON (0x40L)
613 #define BS_LEFT (0x100L)
614 #define BS_LEFTTEXT     (0x20L)
615 #define BS_MULTILINE    (0x2000L)
616 #define BS_NOTIFY       (0x4000L)
617 #define BS_OWNERDRAW    (0xbL)
618 #define BS_PUSHBUTTON   (0L)
619 #define BS_PUSHLIKE     (0x1000L)
620 #define BS_RADIOBUTTON  (0x4L)
621 #define BS_RIGHT        (0x200L)
622 #define BS_RIGHTBUTTON  (0x20L)
623 #define BS_TEXT (0L)
624 #define BS_TOP  (0x400L)
625 #define BS_USERBUTTON   (0x8L)
626 #define BS_VCENTER      (0xc00L)
627 #define CBS_AUTOHSCROLL (0x40L)
628 #define CBS_DISABLENOSCROLL     (0x800L)
629 #define CBS_DROPDOWN    (0x2L)
630 #define CBS_DROPDOWNLIST        (0x3L)
631 #define CBS_HASSTRINGS  (0x200L)
632 #define CBS_LOWERCASE   (0x4000L)
633 #define CBS_NOINTEGRALHEIGHT    (0x400L)
634 #define CBS_OEMCONVERT  (0x80L)
635 #define CBS_OWNERDRAWFIXED      (0x10L)
636 #define CBS_OWNERDRAWVARIABLE   (0x20L)
637 #define CBS_SIMPLE      (0x1L)
638 #define CBS_SORT        (0x100L)
639 #define CBS_UPPERCASE   (0x2000L)
640 #define ES_AUTOHSCROLL  (0x80L)
641 #define ES_AUTOVSCROLL  (0x40L)
642 #define ES_CENTER       (0x1L)
643 #define ES_LEFT (0L)
644 #define ES_LOWERCASE    (0x10L)
645 #define ES_MULTILINE    (0x4L)
646 #define ES_NOHIDESEL    (0x100L)
647 #define ES_NUMBER       (0x2000L)
648 #define ES_OEMCONVERT   (0x400L)
649 #define ES_PASSWORD     (0x20L)
650 #define ES_READONLY     (0x800L)
651 #define ES_RIGHT        (0x2L)
652 #define ES_UPPERCASE    (0x8L)
653 #define ES_WANTRETURN   (0x1000L)
654 #define LBS_DISABLENOSCROLL     (0x1000L)
655 #define LBS_EXTENDEDSEL (0x800L)
656 #define LBS_HASSTRINGS  (0x40L)
657 #define LBS_MULTICOLUMN (0x200L)
658 #define LBS_MULTIPLESEL (0x8L)
659 #define LBS_NODATA      (0x2000L)
660 #define LBS_NOINTEGRALHEIGHT    (0x100L)
661 #define LBS_NOREDRAW    (0x4L)
662 #define LBS_NOSEL       (0x4000L)
663 #define LBS_NOTIFY      (0x1L)
664 #define LBS_OWNERDRAWFIXED      (0x10L)
665 #define LBS_OWNERDRAWVARIABLE   (0x20L)
666 #define LBS_SORT        (0x2L)
667 #define LBS_STANDARD    (0xa00003L)
668 #define LBS_USETABSTOPS (0x80L)
669 #define LBS_WANTKEYBOARDINPUT   (0x400L)
670 #define SBS_BOTTOMALIGN (0x4L)
671 #define SBS_HORZ        (0L)
672 #define SBS_LEFTALIGN   (0x2L)
673 #define SBS_RIGHTALIGN  (0x4L)
674 #define SBS_SIZEBOX     (0x8L)
675 #define SBS_SIZEBOXBOTTOMRIGHTALIGN     (0x4L)
676 #define SBS_SIZEBOXTOPLEFTALIGN (0x2L)
677 #define SBS_SIZEGRIP    (0x10L)
678 #define SBS_TOPALIGN    (0x2L)
679 #define SBS_VERT        (0x1L)
680 #define SS_BITMAP       (0xeL)
681 #define SS_BLACKFRAME   (0x7L)
682 #define SS_BLACKRECT    (0x4L)
683 #define SS_CENTER       (0x1L)
684 #define SS_CENTERIMAGE  (0x200L)
685 #define SS_ENHMETAFILE  (0xfL)
686 #define SS_ETCHEDFRAME  (0x12L)
687 #define SS_ETCHEDHORZ   (0x10L)
688 #define SS_ETCHEDVERT   (0x11L)
689 #define SS_GRAYFRAME    (0x8L)
690 #define SS_GRAYRECT     (0x5L)
691 #define SS_ICON (0x3L)
692 #define SS_LEFT (0L)
693 #define SS_LEFTNOWORDWRAP       (0xcL)
694 #define SS_NOPREFIX     (0x80L)
695 #define SS_NOTIFY       (0x100L)
696 #define SS_OWNERDRAW    (0xdL)
697 #define SS_REALSIZEIMAGE        (0x800L)
698 #define SS_RIGHT        (0x2L)
699 #define SS_RIGHTJUST    (0x400L)
700 #define SS_SIMPLE       (0xbL)
701 #define SS_SUNKEN       (0x1000L)
702 #define SS_USERITEM     (0xaL)
703 #define SS_WHITEFRAME   (0x9L)
704 #define SS_WHITERECT    (0x6L)
705 #define DS_3DLOOK       (0x4L)
706 #define DS_ABSALIGN     (0x1L)
707 #define DS_CENTER       (0x800L)
708 #define DS_CENTERMOUSE  (0x1000L)
709 #define DS_CONTEXTHELP  (0x2000L)
710 #define DS_CONTROL      (0x400L)
711 #define DS_FIXEDSYS     (0x8L)
712 #define DS_LOCALEDIT    (0x20L)
713 #define DS_MODALFRAME   (0x80L)
714 #define DS_NOFAILCREATE (0x10L)
715 #define DS_NOIDLEMSG    (0x100L)
716 #define DS_SETFONT      (0x40L)
717 #define DS_SETFOREGROUND        (0x200L)
718 #define DS_SYSMODAL     (0x2L)
719
720 /* CreateWindowEx */
721 #define WS_EX_ACCEPTFILES       (0x10L)
722 #define WS_EX_APPWINDOW (0x40000L)
723 #define WS_EX_CLIENTEDGE        (0x200L)
724 #define WS_EX_CONTEXTHELP       (0x400L)
725 #define WS_EX_CONTROLPARENT     (0x10000L)
726 #define WS_EX_DLGMODALFRAME     (0x1L)
727 #define WS_EX_LEFT      (0L)
728 #define WS_EX_LEFTSCROLLBAR     (0x4000L)
729 #define WS_EX_LTRREADING        (0L)
730 #define WS_EX_MDICHILD  (0x40L)
731 #define WS_EX_NOPARENTNOTIFY    (0x4L)
732 #define WS_EX_OVERLAPPEDWINDOW  (0x300L)
733 #define WS_EX_PALETTEWINDOW     (0x188L)
734 #define WS_EX_RIGHT     (0x1000L)
735 #define WS_EX_RIGHTSCROLLBAR    (0L)
736 #define WS_EX_RTLREADING        (0x2000L)
737 #define WS_EX_STATICEDGE        (0x20000L)
738 #define WS_EX_TOOLWINDOW        (0x80L)
739 #define WS_EX_TOPMOST   (0x8L)
740 #define WS_EX_TRANSPARENT       (0x20L)
741 #define WS_EX_WINDOWEDGE        (0x100L)
742
743 /* CreateWindowStation */
744 #define WINSTA_ACCESSCLIPBOARD  (0x4L)
745 #define WINSTA_ACCESSGLOBALATOMS        (0x20L)
746 #define WINSTA_CREATEDESKTOP    (0x8L)
747 #define WINSTA_ENUMDESKTOPS     (0x1L)
748 #define WINSTA_ENUMERATE        (0x100L)
749 #define WINSTA_EXITWINDOWS      (0x40L)
750 #define WINSTA_READATTRIBUTES   (0x2L)
751 #define WINSTA_READSCREEN       (0x200L)
752 #define WINSTA_WRITEATTRIBUTES  (0x10L)
753
754 /* DdeCallback */
755
756 /* DdeClientTransaction */
757
758 /* DdeEnableCallback */
759
760 /* DdeGetLastError */
761
762 /* DdeInitialize */
763
764 /* DdeNameService */
765
766 /* DebugProc */
767 #define WH_CALLWNDPROC  (4)
768 #define WH_CALLWNDPROCRET       (12)
769 #define WH_CBT  (5)
770 #define WH_DEBUG        (9)
771 #define WH_GETMESSAGE   (3)
772 #define WH_JOURNALPLAYBACK      (1)
773 #define WH_JOURNALRECORD        (0)
774 #define WH_KEYBOARD     (2)
775 #define WH_MOUSE        (7)
776 #define WH_MSGFILTER    (-1)
777 #define WH_SHELL        (10)
778 #define WH_SYSMSGFILTER (6)
779 #define WH_MSGFILTER    (-1)
780 #define WH_FOREGROUNDIDLE       (11)
781
782 /* DefineDosDevice */
783 #define DDD_RAW_TARGET_PATH     (1)
784 #define DDD_REMOVE_DEFINITION   (2)
785 #define DDD_EXACT_MATCH_ON_REMOVE       (4)
786
787 /* DeviceCapbilities */
788 #define DC_BINNAMES     (12)
789 #define DC_BINS (6)
790 #define DC_COPIES       (18)
791 #define DC_DRIVER       (11)
792 #define DC_DATATYPE_PRODUCED    (21)
793 #define DC_DUPLEX       (7)
794 #define DC_EMF_COMPLIANT        (20)
795 #define DC_ENUMRESOLUTIONS      (13)
796 #define DC_EXTRA        (9)
797 #define DC_FIELDS       (1)
798 #define DC_FILEDEPENDENCIES     (14)
799 #define DC_MAXEXTENT    (5)
800 #define DC_MINEXTENT    (4)
801 #define DC_ORIENTATION  (17)
802 #define DC_PAPERNAMES   (16)
803 #define DC_PAPERS       (2)
804 #define DC_PAPERSIZE    (3)
805 #define DC_SIZE (8)
806 #define DC_TRUETYPE     (15)
807 #define DCTT_BITMAP     (0x1L)
808 #define DCTT_DOWNLOAD   (0x2L)
809 #define DCTT_SUBDEV     (0x4L)
810 #define DC_VERSION      (10)
811 #define DC_BINADJUST    (19)
812 #define DC_DATATYPE_PRODUCED    (21)
813
814 /* DeviceIoControl */
815
816 /* DlgDirList */
817 #define DDL_ARCHIVE     (32)
818 #define DDL_DIRECTORY   (16)
819 #define DDL_DRIVES      (16384)
820 #define DDL_EXCLUSIVE   (32768)
821 #define DDL_HIDDEN      (2)
822 #define DDL_READONLY    (1)
823 #define DDL_READWRITE   (0)
824 #define DDL_SYSTEM      (4)
825 #define DDL_POSTMSGS    (8192)
826
827 /* DllEntryPoint */
828 #define DLL_PROCESS_ATTACH      (1)
829 #define DLL_THREAD_ATTACH       (2)
830 #define DLL_PROCESS_DETACH      (0)
831 #define DLL_THREAD_DETACH       (3)
832
833 /* DocumentProperties */
834 #define DM_IN_BUFFER    (8)
835 #define DM_MODIFY       (8)
836 #define DM_IN_PROMPT    (4)
837 #define DM_PROMPT       (4)
838 #define DM_OUT_BUFFER   (2)
839 #define DM_COPY (2)
840 #define DM_UPDATE       (1)
841
842 /* DrawAnimatedRects */
843 #define IDANI_OPEN      (1)
844 #define IDANI_CLOSE     (2)
845
846 /* DrawCaption */
847 #define DC_ACTIVE       (1)
848 #define DC_SMALLCAP     (2)
849
850 /* DrawEdge */
851 #define BDR_OUTER       (3)
852 #define BDR_INNER       (12)
853 #define BDR_RAISED      (5)
854 #define BDR_SUNKEN      (10)
855 #define BDR_RAISEDINNER (4)
856 #define BDR_SUNKENINNER (8)
857 #define BDR_RAISEDOUTER (1)
858 #define BDR_SUNKENOUTER (1)
859 #define EDGE_BUMP       (9)
860 #define EDGE_ETCHED     (6)
861 #define EDGE_RAISED     (5)
862 #define EDGE_SUNKEN     (10)
863 #define BF_ADJUST       (8192)
864 #define BF_BOTTOM       (8)
865 #define BF_BOTTOMLEFT   (9)
866 #define BF_BOTTOMRIGHT  (12)
867 #define BF_DIAGONAL     (16)
868 #define BF_DIAGONAL_ENDBOTTOMLEFT       (25)
869 #define BF_DIAGONAL_ENDBOTTOMRIGHT      (28)
870 #define BF_DIAGONAL_ENDTOPLEFT  (19)
871 #define BF_DIAGONAL_ENDTOPRIGHT (22)
872 #define BF_FLAT (16384)
873 #define BF_LEFT (1)
874 #define BF_MIDDLE       (2048)
875 #define BF_MONO (32768)
876 #define BF_RECT (15)
877 #define BF_RIGHT        (4)
878 #define BF_SOFT (4096)
879 #define BF_TOP  (2)
880 #define BF_TOPLEFT      (3)
881 #define BF_TOPRIGHT     (6)
882
883 /* DrawFrameControl */
884 #define DFC_BUTTON      (4)
885 #define DFC_POPUPMENU (5)
886 #define DFC_CAPTION     (1)
887 #define DFC_MENU        (2)
888 #define DFC_SCROLL      (3)
889 #define DFCS_BUTTON3STATE       (8)
890 #define DFCS_BUTTONCHECK        (0)
891 #define DFCS_BUTTONPUSH (16)
892 #define DFCS_BUTTONRADIO        (4)
893 #define DFCS_BUTTONRADIOIMAGE   (1)
894 #define DFCS_BUTTONRADIOMASK    (2)
895 #define DFCS_CAPTIONCLOSE       (0)
896 #define DFCS_CAPTIONHELP        (4)
897 #define DFCS_CAPTIONMAX (2)
898 #define DFCS_CAPTIONMIN (1)
899 #define DFCS_CAPTIONRESTORE     (3)
900 #define DFCS_MENUARROW  (0)
901 #define DFCS_MENUBULLET (2)
902 #define DFCS_MENUCHECK  (1)
903 #define DFCS_SCROLLCOMBOBOX     (5)
904 #define DFCS_SCROLLDOWN (1)
905 #define DFCS_SCROLLLEFT (2)
906 #define DFCS_SCROLLRIGHT        (3)
907 #define DFCS_SCROLLSIZEGRIP     (8)
908 #define DFCS_SCROLLUP   (0)
909 #define DFCS_ADJUSTRECT (8192)
910 #define DFCS_CHECKED    (1024)
911 #define DFCS_FLAT       (16384)
912 #define DFCS_INACTIVE   (256)
913 #define DFCS_MONO       (32768)
914 #define DFCS_PUSHED     (512)
915
916 /* DrawIconEx */
917 #define DI_COMPAT       (4)
918 #define DI_DEFAULTSIZE  (8)
919 #define DI_IMAGE        (2)
920 #define DI_MASK (1)
921 #define DI_NORMAL       (3)
922
923 /* DrawState */
924 #define DST_BITMAP      (4)
925 #define DST_COMPLEX     (0)
926 #define DST_ICON        (3)
927 #define DST_PREFIXTEXT  (2)
928 #define DST_TEXT        (1)
929 #define DSS_NORMAL      (0)
930 #define DSS_UNION       (16)
931 #define DSS_DISABLED    (32)
932 #define DSS_MONO        (128)
933
934 /* DrawStatusText */
935 #define SBT_NOBORDERS   (256)
936 #define SBT_OWNERDRAW   (4096)
937 #define SBT_POPOUT      (512)
938 #define SBT_RTLREADING  (1024)
939
940 /* DrawText, DrawTextEx */
941 #define DT_BOTTOM       (8)
942 #define DT_CALCRECT     (1024)
943 #define DT_CENTER       (1)
944 #define DT_EDITCONTROL  (8192)
945 #define DT_END_ELLIPSIS (32768)
946 #define DT_PATH_ELLIPSIS        (16384)
947 #define DT_EXPANDTABS   (64)
948 #define DT_EXTERNALLEADING      (512)
949 #define DT_LEFT (0)
950 #define DT_MODIFYSTRING (65536)
951 #define DT_NOCLIP       (256)
952 #define DT_NOPREFIX     (2048)
953 #define DT_RIGHT        (2)
954 #define DT_RTLREADING   (131072)
955 #define DT_SINGLELINE   (32)
956 #define DT_TABSTOP      (128)
957 #define DT_TOP  (0)
958 #define DT_VCENTER      (4)
959 #define DT_WORDBREAK    (16)
960 #define DT_WORD_ELLIPSIS        (262144)
961 #define DT_INTERNAL     (4096)
962
963
964 /* EditWordBreakProc */
965 #define WB_ISDELIMITER  (2)
966 #define WB_LEFT (0)
967 #define WB_RIGHT        (1)
968
969 /* EnableScrollBar */
970 #define SB_BOTH (3)
971 #define SB_CTL  (2)
972 #define SB_HORZ (0)
973 #define SB_VERT (1)
974 #define ESB_DISABLE_BOTH        (3)
975 #define ESB_DISABLE_DOWN        (2)
976 #define ESB_DISABLE_LEFT        (1)
977 #define ESB_DISABLE_LTUP        (1)
978 #define ESB_DISABLE_RIGHT       (2)
979 #define ESB_DISABLE_RTDN        (2)
980 #define ESB_DISABLE_UP  (1)
981 #define ESB_ENABLE_BOTH (0)
982
983 /* Scroll Bar notifications*/
984 #define SB_LINEUP       (0)
985 #define SB_LINEDOWN     (1)
986 #define SB_LINELEFT     (0)
987 #define SB_LINERIGHT    (1)
988 #define SB_PAGEUP       (2)
989 #define SB_PAGEDOWN     (3)
990 #define SB_PAGELEFT     (2)
991 #define SB_PAGERIGHT    (3)
992 #define SB_THUMBPOSITION        (4)
993 #define SB_THUMBTRACK   (5)
994 #define SB_ENDSCROLL    (8)
995 #define SB_LEFT (6)
996 #define SB_RIGHT        (7)
997 #define SB_BOTTOM       (7)
998 #define SB_TOP  (6)
999
1000 /* EnumCalendarInfo */
1001 #define ENUM_ALL_CALENDARS      (-1)
1002
1003 /* EnumDateFormats */
1004 #define DATE_SHORTDATE  (1)
1005 #define DATE_LONGDATE   (2)
1006
1007 /* EnumDependentServices */
1008 #define SERVICE_ACTIVE  (1)
1009 #define SERVICE_INACTIVE        (2)
1010
1011 /* EnumFontFamExProc */
1012 #define DEVICE_FONTTYPE (2)
1013 #define RASTER_FONTTYPE (1)
1014 #define TRUETYPE_FONTTYPE       (4)
1015
1016 /* EnumObjects, GetCurrentObject, GetObjectType */
1017 #define OBJ_BRUSH       (2)
1018 #define OBJ_PEN (1)
1019 #define OBJ_PAL (5)
1020 #define OBJ_FONT        (6)
1021 #define OBJ_BITMAP      (7)
1022 #define OBJ_EXTPEN      (11)
1023 #define OBJ_REGION      (8)
1024 #define OBJ_DC  (3)
1025 #define OBJ_MEMDC       (10)
1026 #define OBJ_METAFILE    (9)
1027 #define OBJ_METADC      (4)
1028 #define OBJ_ENHMETAFILE (13)
1029 #define OBJ_ENHMETADC   (12)
1030
1031 /* EnumPrinters */
1032
1033 /* EnumProtocols */
1034
1035 /* EnumResLangProc */
1036 #define RT_ACCELERATOR  (MAKEINTRESOURCE(9))
1037 #define RT_BITMAP       (MAKEINTRESOURCE(2))
1038 #define RT_DIALOG       (MAKEINTRESOURCE(5))
1039 #define RT_FONT (MAKEINTRESOURCE(8))
1040 #define RT_FONTDIR      (MAKEINTRESOURCE(7))
1041 #define RT_MENU (MAKEINTRESOURCE(4))
1042 #define RT_RCDATA       (MAKEINTRESOURCE(10))
1043 #define RT_STRING       (MAKEINTRESOURCE(6))
1044 #define RT_MESSAGETABLE (MAKEINTRESOURCE(11))
1045 #define RT_CURSOR       (MAKEINTRESOURCE(1))
1046 #define RT_GROUP_CURSOR (MAKEINTRESOURCE(12))
1047 #define RT_ICON (MAKEINTRESOURCE(3))
1048 #define RT_GROUP_ICON   (MAKEINTRESOURCE(13))
1049 #define RT_VERSION      (MAKEINTRESOURCE(16))
1050
1051 /* EnumServicesStatus */
1052 #define SERVICE_WIN32   (48)
1053 #define SERVICE_DRIVER  (11)
1054
1055 /* EnumSystemCodePages */
1056 #define CP_INSTALLED    (1)
1057 #define CP_SUPPORTED    (2)
1058
1059 /* EnumSystemLocales */
1060 #define LCID_INSTALLED  (1)
1061 #define LCID_SUPPORTED  (2)
1062
1063 /* EraseTape */
1064 #define TAPE_ERASE_LONG (0x1L)
1065 #define TAPE_ERASE_SHORT        (0L)
1066
1067 /* Escape */
1068 #define SP_ERROR        (-1)
1069 #define SP_OUTOFDISK    (-4)
1070 #define SP_OUTOFMEMORY  (-5)
1071 #define SP_USERABORT    (-3)
1072 #define PHYSICALWIDTH   (110)
1073 #define PHYSICALHEIGHT  (111)
1074 #define PHYSICALOFFSETX (112)
1075 #define PHYSICALOFFSETY (113)
1076 #define SCALINGFACTORX  (114)
1077 #define SCALINGFACTORY  (115)
1078 #define QUERYESCSUPPORT (8)
1079 #define ABORTDOC        (2)
1080 #define ENDDOC  (11)
1081 #define GETPHYSPAGESIZE (12)
1082 #define GETPRINTINGOFFSET       (13)
1083 #define GETSCALINGFACTOR        (14)
1084 #define NEWFRAME        (1)
1085 #define NEXTBAND        (3)
1086 #define PASSTHROUGH     (19)
1087 #define SETABORTPROC    (9)
1088 #define STARTDOC        (10)
1089
1090 /* EscapeCommFunction */
1091 #define CLRDTR  (6)
1092 #define CLRRTS  (4)
1093 #define SETDTR  (5)
1094 #define SETRTS  (3)
1095 #define SETXOFF (1)
1096 #define SETXON  (2)
1097 #define SETBREAK        (8)
1098 #define CLRBREAK        (9)
1099
1100 /* ExitWindowsEx */
1101 #define EWX_FORCE       (4)
1102 #define EWX_LOGOFF      (0)
1103 #define EWX_POWEROFF    (8)
1104 #define EWX_REBOOT      (2)
1105 #define EWX_SHUTDOWN    (1)
1106
1107 /* ExtFloodFill */
1108 #define FLOODFILLBORDER (0)
1109 #define FLOODFILLSURFACE        (1)
1110
1111 /* ExtTextOut */
1112 #define ETO_CLIPPED     (4)
1113 #define ETO_GLYPH_INDEX (16)
1114 #define ETO_OPAQUE      (2)
1115 #define ETO_RTLREADING  (128)
1116
1117 /* FillConsoleOutputAttribute */
1118 #define FOREGROUND_BLUE (1)
1119 #define FOREGROUND_GREEN        (2)
1120 #define FOREGROUND_RED  (4)
1121 #define FOREGROUND_INTENSITY    (8)
1122 #define BACKGROUND_BLUE (16)
1123 #define BACKGROUND_GREEN        (32)
1124 #define BACKGROUND_RED  (64)
1125 #define BACKGROUND_INTENSITY    (128)
1126
1127 /* FindFirstChangeNotification */
1128 #define FILE_NOTIFY_CHANGE_FILE_NAME    (1)
1129 #define FILE_NOTIFY_CHANGE_DIR_NAME     (2)
1130 #define FILE_NOTIFY_CHANGE_ATTRIBUTES   (4)
1131 #define FILE_NOTIFY_CHANGE_SIZE (8)
1132 #define FILE_NOTIFY_CHANGE_LAST_WRITE   (16)
1133 #define FILE_NOTIFY_CHANGE_SECURITY     (256)
1134
1135 /* FindFirstPrinterChangeNotification */
1136
1137 /* FindNextPrinterNotification */
1138
1139 /* FMExtensionProc */
1140
1141 /* FoldString */
1142 #define MAP_FOLDCZONE   (16)
1143 #define MAP_FOLDDIGITS  (128)
1144 #define MAP_PRECOMPOSED (32)
1145 #define MAP_COMPOSITE   (64)
1146
1147 /* ForegroundIdleProc */
1148 #define HC_ACTION       (0)
1149
1150 /* FormatMessage */
1151 #define FORMAT_MESSAGE_ALLOCATE_BUFFER  (256)
1152 #define FORMAT_MESSAGE_IGNORE_INSERTS   (512)
1153 #define FORMAT_MESSAGE_FROM_STRING      (1024)
1154 #define FORMAT_MESSAGE_FROM_HMODULE     (2048)
1155 #define FORMAT_MESSAGE_FROM_SYSTEM      (4096)
1156 #define FORMAT_MESSAGE_ARGUMENT_ARRAY   (8192)
1157 #define FORMAT_MESSAGE_MAX_WIDTH_MASK   (255)
1158
1159 /* GdiComment */
1160 #define GDICOMMENT_WINDOWS_METAFILE     (-2147483647)
1161 #define GDICOMMENT_BEGINGROUP   (2)
1162 #define GDICOMMENT_ENDGROUP     (3)
1163 #define GDICOMMENT_MULTIFORMATS (1073741828)
1164 #define GDICOMMENT_IDENTIFIER   (1128875079)
1165
1166 /* GenerateConsoleCtrlEvent, HandlerRoutine */
1167 #define CTRL_C_EVENT    (0)
1168 #define CTRL_BREAK_EVENT        (1)
1169 #define CTRL_CLOSE_EVENT        (2)
1170 #define CTRL_LOGOFF_EVENT       (5)
1171 #define CTRL_SHUTDOWN_EVENT     (6)
1172
1173 /* GetAddressByName */
1174
1175 /* GetArcDirection */
1176 #define AD_COUNTERCLOCKWISE     (1)
1177 #define AD_CLOCKWISE    (2)
1178
1179 /* GetBinaryTypes */
1180 #define SCS_32BIT_BINARY        (0)
1181 #define SCS_DOS_BINARY  (1)
1182 #define SCS_OS216_BINARY        (5)
1183 #define SCS_PIF_BINARY  (3)
1184 #define SCS_POSIX_BINARY        (4)
1185 #define SCS_WOW_BINARY  (2)
1186
1187 /* GetBoundsRect, SetBoundsRect */
1188 #define DCB_DISABLE     (8)
1189 #define DCB_ENABLE      (4)
1190 #define DCB_RESET       (1)
1191 #define DCB_SET (3)
1192 #define DCB_ACCUMULATE  (2)
1193
1194 /* GetCharacterPlacement, GetFontLanguageInfo */
1195 #define GCP_DBCS        (1)
1196 #define GCP_ERROR       (0x8000)
1197 #define GCP_CLASSIN     (0x80000L)
1198 #define GCP_DIACRITIC   (256)
1199 #define GCP_DISPLAYZWG  (0x400000L)
1200 #define GCP_GLYPHSHAPE  (16)
1201 #define GCP_JUSTIFY     (0x10000L)
1202 #define GCP_JUSTIFYIN   (0x200000L)
1203 #define GCP_KASHIDA     (1024)
1204 #define GCP_LIGATE      (32)
1205 #define GCP_MAXEXTENT   (0x100000L)
1206 #define GCP_NEUTRALOVERRIDE     (0x2000000L)
1207 #define GCP_NUMERICOVERRIDE     (0x1000000L)
1208 #define GCP_NUMERICSLATIN       (0x4000000L)
1209 #define GCP_NUMERICSLOCAL       (0x8000000L)
1210 #define GCP_REORDER     (2)
1211 #define GCP_SYMSWAPOFF  (0x800000L)
1212 #define GCP_USEKERNING  (8)
1213 #define FLI_GLYPHS      (0x40000L)
1214 #define FLI_MASK        (0x103b)
1215
1216 /* GetClassLong, GetClassWord */
1217 #define GCW_ATOM        (-32)
1218 #define GCL_CBCLSEXTRA  (-20)
1219 #define GCL_CBWNDEXTRA  (-18)
1220 #define GCL_HBRBACKGROUND       (-10)
1221 #define GCL_HCURSOR     (-12)
1222 #define GCL_HICON       (-14)
1223 #define GCL_HICONSM     (-34)
1224 #define GCL_HMODULE     (-16)
1225 #define GCL_MENUNAME    (-8)
1226 #define GCL_STYLE       (-26)
1227 #define GCL_WNDPROC     (-24)
1228
1229 /* GetClipboardFormat, SetClipboardData */
1230 #define CF_BITMAP       (2)
1231 #define CF_DIB  (8)
1232 #define CF_PALETTE      (9)
1233 #define CF_ENHMETAFILE  (14)
1234 #define CF_METAFILEPICT (3)
1235 #define CF_OEMTEXT      (7)
1236 #define CF_TEXT (1)
1237 #define CF_UNICODETEXT  (13)
1238 #define CF_DIF  (5)
1239 #define CF_DSPBITMAP    (130)
1240 #define CF_DSPENHMETAFILE       (142)
1241 #define CF_DSPMETAFILEPICT      (131)
1242 #define CF_DSPTEXT      (129)
1243 #define CF_GDIOBJFIRST  (768)
1244 #define CF_GDIOBJLAST   (1023)
1245 #define CF_HDROP        (15)
1246 #define CF_LOCALE       (16)
1247 #define CF_OWNERDISPLAY (128)
1248 #define CF_PENDATA      (10)
1249 #define CF_PRIVATEFIRST (512)
1250 #define CF_PRIVATELAST  (767)
1251 #define CF_RIFF (11)
1252 #define CF_SYLK (4)
1253 #define CF_WAVE (12)
1254 #define CF_TIFF (6)
1255
1256 /* GetCommMask */
1257 #define EV_BREAK        (64)
1258 #define EV_CTS  (8)
1259 #define EV_DSR  (16)
1260 #define EV_ERR  (128)
1261 #define EV_EVENT1       (2048)
1262 #define EV_EVENT2       (4096)
1263 #define EV_PERR (512)
1264 #define EV_RING (256)
1265 #define EV_RLSD (32)
1266 #define EV_RX80FULL     (1024)
1267 #define EV_RXCHAR       (1)
1268 #define EV_RXFLAG       (2)
1269 #define EV_TXEMPTY      (4)
1270
1271 /* GetCommModemStatus */
1272 #define MS_CTS_ON       (0x10L)
1273 #define MS_DSR_ON       (0x20L)
1274 #define MS_RING_ON      (0x40L)
1275 #define MS_RLSD_ON      (0x80L)
1276
1277 /* GetComputerName */
1278 #define MAX_COMPUTERNAME_LENGTH (15)
1279
1280
1281 /* GetCPInfo */
1282 #define CP_ACP  (0)
1283 #define CP_MACCP        (2)
1284 #define CP_OEMCP        (1)
1285 #define CP_THREAD_ACP                   3                       //ACP Current thread's ANSI code page 
1286 #define CP_SYMBOL                               42                      //Symbol code page (42) 
1287 #define CP_UTF7                                 65000           //Translate using UTF-7 
1288 #define CP_UTF8                                 65001           //Translate using UTF-8 
1289
1290 /* GetDateFormat */
1291 #define DATE_SHORTDATE  (1)
1292 #define DATE_LONGDATE   (2)
1293 #define DATE_USE_ALT_CALENDAR   (4)
1294
1295 /* GetDCEx */
1296 #define DCX_WINDOW      (0x1L)
1297 #define DCX_CACHE       (0x2L)
1298 #define DCX_PARENTCLIP  (0x20L)
1299 #define DCX_CLIPSIBLINGS        (0x10L)
1300 #define DCX_CLIPCHILDREN        (0x8L)
1301 #define DCX_NORESETATTRS        (0x4L)
1302 #define DCX_LOCKWINDOWUPDATE    (0x400L)
1303 #define DCX_EXCLUDERGN  (0x40L)
1304 #define DCX_INTERSECTRGN        (0x80L)
1305 #define DCX_VALIDATE    (0x200000L)
1306 #define DCX_USESTYLE         (0x00010000L)
1307 #define DCX_NORECOMPUTE      (0x00100000L)
1308 #define DCX_EXCLUDEUPDATE    (0x00000100L)
1309 #define DCX_INTERSECTUPDATE  (0x00000200L)
1310
1311 /* GetDeviceCaps */
1312 #define DRIVERVERSION   (0)
1313 #define TECHNOLOGY      (2)
1314 #define DT_PLOTTER      (0)
1315 #define DT_RASDISPLAY   (1)
1316 #define DT_RASPRINTER   (2)
1317 #define DT_RASCAMERA    (3)
1318 #define DT_CHARSTREAM   (4)
1319 #define DT_METAFILE     (5)
1320 #define DT_DISPFILE     (6)
1321 #define HORZSIZE        (4)
1322 #define VERTSIZE        (6)
1323 #define HORZRES (8)
1324 #define VERTRES (10)
1325 #define LOGPIXELSX      (88)
1326 #define LOGPIXELSY      (90)
1327 #define BITSPIXEL       (12)
1328 #define PLANES  (14)
1329 #define NUMBRUSHES      (16)
1330 #define NUMPENS (18)
1331 #define NUMFONTS        (22)
1332 #define NUMCOLORS       (24)
1333 #define ASPECTX (40)
1334 #define ASPECTY (42)
1335 #define ASPECTXY        (44)
1336 #define PDEVICESIZE     (26)
1337 #define CLIPCAPS        (36)
1338 #define SIZEPALETTE     (104)
1339 #define NUMRESERVED     (106)
1340 #define COLORRES        (108)
1341 #define PHYSICALWIDTH   (110)
1342 #define PHYSICALHEIGHT  (111)
1343 #define PHYSICALOFFSETX (112)
1344 #define PHYSICALOFFSETY (113)
1345 #define SCALINGFACTORX  (114)
1346 #define SCALINGFACTORY  (115)
1347 #define VREFRESH        (116)
1348 #define DESKTOPHORZRES  (118)
1349 #define DESKTOPVERTRES  (117)
1350 #define BLTALIGNMENT    (119)
1351 #define RASTERCAPS      (38)
1352 #define RC_BANDING      (2)
1353 #define RC_BITBLT       (1)
1354 #define RC_BITMAP64     (8)
1355 #define RC_DI_BITMAP    (128)
1356 #define RC_DIBTODEV     (512)
1357 #define RC_FLOODFILL    (4096)
1358 #define RC_GDI20_OUTPUT (16)
1359 #define RC_PALETTE      (256)
1360 #define RC_SCALING      (4)
1361 #define RC_STRETCHBLT   (2048)
1362 #define RC_STRETCHDIB   (8192)
1363 #define CURVECAPS       (28)
1364 #define CC_NONE (0)
1365 #define CC_CIRCLES      (1)
1366 #define CC_PIE  (2)
1367 #define CC_CHORD        (4)
1368 #define CC_ELLIPSES     (8)
1369 #define CC_WIDE (16)
1370 #define CC_STYLED       (32)
1371 #define CC_WIDESTYLED   (64)
1372 #define CC_INTERIORS    (128)
1373 #define CC_ROUNDRECT    (256)
1374 #define LINECAPS        (30)
1375 #define LC_NONE (0)
1376 #define LC_POLYLINE     (2)
1377 #define LC_MARKER       (4)
1378 #define LC_POLYMARKER   (8)
1379 #define LC_WIDE (16)
1380 #define LC_STYLED       (32)
1381 #define LC_WIDESTYLED   (64)
1382 #define LC_INTERIORS    (128)
1383 #define POLYGONALCAPS   (32)
1384 #define PC_NONE (0)
1385 #define PC_POLYGON      (1)
1386 #define PC_RECTANGLE    (2)
1387 #define PC_WINDPOLYGON  (4)
1388 #define PC_SCANLINE     (8)
1389 #define PC_WIDE (16)
1390 #define PC_STYLED       (32)
1391 #define PC_WIDESTYLED   (64)
1392 #define PC_INTERIORS    (128)
1393 #define TEXTCAPS        (34)
1394 #define TC_OP_CHARACTER (1)
1395 #define TC_OP_STROKE    (2)
1396 #define TC_CP_STROKE    (4)
1397 #define TC_CR_90        (8)
1398 #define TC_CR_ANY       (16)
1399 #define TC_SF_X_YINDEP  (32)
1400 #define TC_SA_DOUBLE    (64)
1401 #define TC_SA_INTEGER   (128)
1402 #define TC_SA_CONTIN    (256)
1403 #define TC_EA_DOUBLE    (512)
1404 #define TC_IA_ABLE      (1024)
1405 #define TC_UA_ABLE      (2048)
1406 #define TC_SO_ABLE      (4096)
1407 #define TC_RA_ABLE      (8192)
1408 #define TC_VA_ABLE      (16384)
1409 #define TC_RESERVED     (32768)
1410 #define TC_SCROLLBLT    (65536)
1411 #define PC_PATHS        (512)
1412
1413 /* GetDriveType */
1414 #define DRIVE_REMOVABLE (2)
1415 #define DRIVE_FIXED     (3)
1416 #define DRIVE_REMOTE    (4)
1417 #define DRIVE_CDROM     (5)
1418 #define DRIVE_RAMDISK   (6)
1419 #define DRIVE_UNKNOWN   (0)
1420 #define DRIVE_NO_ROOT_DIR       (1)
1421
1422 /* GetExceptionCode */
1423 #define EXCEPTION_ACCESS_VIOLATION      (0xc0000005L)
1424 #define EXCEPTION_BREAKPOINT    (0x80000003L)
1425 #define EXCEPTION_DATATYPE_MISALIGNMENT (0x80000002L)
1426 #define EXCEPTION_SINGLE_STEP   (0x80000004L)
1427 #define EXCEPTION_ARRAY_BOUNDS_EXCEEDED (0xc000008cL)
1428 #define EXCEPTION_FLT_DENORMAL_OPERAND  (0xc000008dL)
1429 #define EXCEPTION_FLT_DIVIDE_BY_ZERO    (0xc000008eL)
1430 #define EXCEPTION_FLT_INEXACT_RESULT    (0xc000008fL)
1431 #define EXCEPTION_FLT_INVALID_OPERATION (0xc0000090L)
1432 #define EXCEPTION_FLT_OVERFLOW  (0xc0000091L)
1433 #define EXCEPTION_FLT_STACK_CHECK       (0xc0000092L)
1434 #define EXCEPTION_FLT_UNDERFLOW (0xc0000093L)
1435 #define EXCEPTION_INT_DIVIDE_BY_ZERO    (0xc0000094L)
1436 #define EXCEPTION_INT_OVERFLOW  (0xc0000095L)
1437 #define EXCEPTION_INVALID_HANDLE        (0xc0000008L)
1438 #define EXCEPTION_PRIV_INSTRUCTION      (0xc0000096L)
1439 #define EXCEPTION_NONCONTINUABLE_EXCEPTION      (0xc0000025L)
1440 #define EXCEPTION_STACK_OVERFLOW        (0xc00000fdL)
1441 #define EXCEPTION_INVALID_DISPOSITION   (0xc0000026L)
1442 #define EXCEPTION_CONTINUABLE           (0x0)
1443 #define EXCEPTION_NONCONTINUABLE        (0x1)
1444
1445 /* GetFileType */
1446 #define FILE_TYPE_UNKNOWN       (0)
1447 #define FILE_TYPE_DISK  (1)
1448 #define FILE_TYPE_CHAR  (2)
1449 #define FILE_TYPE_PIPE  (3)
1450
1451 /* GetGlyphOutline */
1452 #define GGO_BITMAP      (1)
1453 #define GGO_NATIVE      (2)
1454 #define GGO_METRICS     (0)
1455 #define GGO_GRAY2_BITMAP        (4)
1456 #define GGO_GRAY4_BITMAP        (5)
1457 #define GGO_GRAY8_BITMAP        (6)
1458 #define GDI_ERROR       (0xffffffffL)
1459
1460 /* GetGraphicsMode */
1461 #define GM_COMPATIBLE   (1)
1462 #define GM_ADVANCED     (2)
1463
1464 /* GetHandleInformation */
1465 #define HANDLE_FLAG_INHERIT     (1)
1466 #define HANDLE_FLAG_PROTECT_FROM_CLOSE  (2)
1467
1468 /* GetIconInfo */
1469 #define IDC_ARROW       (MAKEINTRESOURCE(32512))
1470 #define IDC_IBEAM       (MAKEINTRESOURCE(32513))
1471 #define IDC_WAIT        (MAKEINTRESOURCE(32514))
1472 #define IDC_CROSS       (MAKEINTRESOURCE(32515))
1473 #define IDC_UPARROW     (MAKEINTRESOURCE(32516))
1474 #define IDC_SIZENWSE    (MAKEINTRESOURCE(32642))
1475 #define IDC_SIZENESW    (MAKEINTRESOURCE(32643))
1476 #define IDC_SIZEWE      (MAKEINTRESOURCE(32644))
1477 #define IDC_SIZENS      (MAKEINTRESOURCE(32645))
1478 #define IDC_SIZEALL     (MAKEINTRESOURCE(32646))
1479 #define IDC_NO  (MAKEINTRESOURCE(32648))
1480 #define IDC_APPSTARTING (MAKEINTRESOURCE(32650))
1481 #define IDC_HELP        (MAKEINTRESOURCE(32651))
1482 #define IDI_APPLICATION (MAKEINTRESOURCE(32512))
1483 #define IDI_HAND        (MAKEINTRESOURCE(32513))
1484 #define IDI_QUESTION    (MAKEINTRESOURCE(32514))
1485 #define IDI_EXCLAMATION (MAKEINTRESOURCE(32515))
1486 #define IDI_ASTERISK    (MAKEINTRESOURCE(32516))
1487 #define IDI_WINLOGO     (MAKEINTRESOURCE(32517))
1488 #define IDC_SIZE        (MAKEINTRESOURCE(32640))
1489 #define IDC_ICON        (MAKEINTRESOURCE(32641))
1490
1491 /* GetMapMode */
1492 #define MM_ANISOTROPIC  (8)
1493 #define MM_HIENGLISH    (5)
1494 #define MM_HIMETRIC     (3)
1495 #define MM_ISOTROPIC    (7)
1496 #define MM_LOENGLISH    (4)
1497 #define MM_LOMETRIC     (2)
1498 #define MM_TEXT (1)
1499 #define MM_TWIPS        (6)
1500
1501 /* GetMenuDefaultItem */
1502 #define GMDI_GOINTOPOPUPS       (0x2L)
1503 #define GMDI_USEDISABLED        (0x1L)
1504
1505 /* PeekMessage */
1506 #define PM_NOREMOVE     (0)
1507 #define PM_REMOVE       (1)
1508 #define PM_NOYIELD      (2)
1509
1510 /* GetNamedPipeHandleState */
1511 #define PIPE_NOWAIT     (1)
1512 #define PIPE_READMODE_MESSAGE   (2)
1513
1514 /* GetNamedPipeInfo */
1515 #define PIPE_CLIENT_END (0)
1516 #define PIPE_SERVER_END (1)
1517 #define PIPE_TYPE_MESSAGE       (4)
1518
1519 /* GetNextWindow, GetWindow */
1520 #define GW_HWNDNEXT     (2)
1521 #define GW_HWNDPREV     (3)
1522 #define GW_CHILD        (5)
1523 #define GW_HWNDFIRST    (0)
1524 #define GW_HWNDLAST     (1)
1525 #define GW_OWNER        (4)
1526
1527 /* GetPath */
1528 #define PT_MOVETO       (6)
1529 #define PT_LINETO       (2)
1530 #define PT_BEZIERTO     (4)
1531 #define PT_CLOSEFIGURE  (1)
1532
1533 /* GetProcessShutdownParameters */
1534 #define SHUTDOWN_NORETRY        (1)
1535
1536 /* GetQueueStatus */
1537 #define QS_ALLEVENTS    (191)
1538 #define QS_ALLINPUT     (255)
1539 #define QS_HOTKEY       (128)
1540 #define QS_INPUT        (7)
1541 #define QS_KEY  (1)
1542 #define QS_MOUSE        (6)
1543 #define QS_MOUSEBUTTON  (4)
1544 #define QS_MOUSEMOVE    (2)
1545 #define QS_PAINT        (32)
1546 #define QS_POSTMESSAGE  (8)
1547 #define QS_SENDMESSAGE  (64)
1548 #define QS_TIMER        (16)
1549
1550 /* GetScrollInfo, SetScrollInfo */
1551 #define SIF_ALL (23)
1552 #define SIF_PAGE        (2)
1553 #define SIF_POS (4)
1554 #define SIF_RANGE       (1)
1555 #define SIF_DISABLENOSCROLL     (8)
1556
1557 /* GetStdHandle */
1558 #define STD_INPUT_HANDLE        (DWORD)(-10)
1559 #define STD_OUTPUT_HANDLE       (DWORD)(-11)
1560 #define STD_ERROR_HANDLE        (DWORD)(-12)
1561
1562 /* GetStockObject */
1563 #define BLACK_BRUSH     (4)
1564 #define DKGRAY_BRUSH    (3)
1565 #define GRAY_BRUSH      (2)
1566 #define HOLLOW_BRUSH    (5)
1567 #define LTGRAY_BRUSH    (1)
1568 #define NULL_BRUSH      (5)
1569 #define WHITE_BRUSH     (0)
1570 #define BLACK_PEN       (7)
1571 #define NULL_PEN        (8)
1572 #define WHITE_PEN       (6)
1573 #define ANSI_FIXED_FONT (11)
1574 #define ANSI_VAR_FONT   (12)
1575 #define DEVICE_DEFAULT_FONT     (14)
1576 #define DEFAULT_GUI_FONT        (17)
1577 #define OEM_FIXED_FONT  (10)
1578 #define SYSTEM_FONT     (13)
1579 #define SYSTEM_FIXED_FONT       (16)
1580 #define DEFAULT_PALETTE (15)
1581
1582 /* GetStringTypeA */
1583 #define CT_CTYPE1       (1)
1584 #define CT_CTYPE2       (2)
1585 #define CT_CTYPE3       (4)
1586 #define C1_UPPER        (1)
1587 #define C1_LOWER        (2)
1588 #define C1_DIGIT        (4)
1589 #define C1_SPACE        (8)
1590 #define C1_PUNCT        (16)
1591 #define C1_CNTRL        (32)
1592 #define C1_BLANK        (64)
1593 #define C1_XDIGIT       (128)
1594 #define C1_ALPHA        (256)
1595 #define C2_LEFTTORIGHT  (1)
1596 #define C2_RIGHTTOLEFT  (2)
1597 #define C2_EUROPENUMBER (3)
1598 #define C2_EUROPESEPARATOR      (4)
1599 #define C2_EUROPETERMINATOR     (5)
1600 #define C2_ARABICNUMBER (6)
1601 #define C2_COMMONSEPARATOR      (7)
1602 #define C2_BLOCKSEPARATOR       (8)
1603 #define C2_SEGMENTSEPARATOR     (9)
1604 #define C2_WHITESPACE   (10)
1605 #define C2_OTHERNEUTRAL (11)
1606 #define C2_NOTAPPLICABLE        (0)
1607 #define C3_NONSPACING   (1)
1608 #define C3_DIACRITIC    (2)
1609 #define C3_VOWELMARK    (4)
1610 #define C3_SYMBOL       (8)
1611 #define C3_KATAKANA     (16)
1612 #define C3_HIRAGANA     (32)
1613 #define C3_HALFWIDTH    (64)
1614 #define C3_FULLWIDTH    (128)
1615 #define C3_IDEOGRAPH    (256)
1616 #define C3_KASHIDA      (512)
1617 #define C3_ALPHA        (32768)
1618 #define C3_NOTAPPLICABLE        (0)
1619
1620 /* GetSysColor */
1621 #define COLOR_3DDKSHADOW        (21)
1622 #define COLOR_3DFACE    (15)
1623 #define COLOR_3DHILIGHT (20)
1624 #define COLOR_3DLIGHT   (22)
1625 #define COLOR_BTNHILIGHT        (20)
1626 #define COLOR_3DSHADOW  (16)
1627 #define COLOR_ACTIVEBORDER      (10)
1628 #define COLOR_ACTIVECAPTION     (2)
1629 #define COLOR_APPWORKSPACE      (12)
1630 #define COLOR_BACKGROUND        (1)
1631 #define COLOR_DESKTOP   (1)
1632 #define COLOR_BTNFACE   (15)
1633 #define COLOR_BTNHIGHLIGHT      (20)
1634 #define COLOR_BTNSHADOW (16)
1635 #define COLOR_BTNTEXT   (18)
1636 #define COLOR_CAPTIONTEXT       (9)
1637 #define COLOR_GRAYTEXT  (17)
1638 #define COLOR_HIGHLIGHT (13)
1639 #define COLOR_HIGHLIGHTTEXT     (14)
1640 #define COLOR_INACTIVEBORDER    (11)
1641 #define COLOR_INACTIVECAPTION   (3)
1642 #define COLOR_INACTIVECAPTIONTEXT       (19)
1643 #define COLOR_INFOBK    (24)
1644 #define COLOR_INFOTEXT  (23)
1645 #define COLOR_MENU      (4)
1646 #define COLOR_MENUTEXT  (7)
1647 #define COLOR_SCROLLBAR (0)
1648 #define COLOR_WINDOW    (5)
1649 #define COLOR_WINDOWFRAME       (6)
1650 #define COLOR_WINDOWTEXT        (8)
1651
1652 /* GetSystemMetrics */
1653 #define SM_CYMIN        (29)
1654 #define SM_CXMIN        (28)
1655 #define SM_ARRANGE      (56)
1656 #define SM_CLEANBOOT    (67)
1657 /* The right value for SM_CEMETRICS for NT 3.5 is 75.  For Windows 95
1658    and NT 4.0, it is 76.  The meaning is undocumented, anyhow.  */
1659 #define SM_CMETRICS     (76)
1660 #define SM_CMOUSEBUTTONS        (43)
1661 #define SM_CXBORDER     (5)
1662 #define SM_CYBORDER     (6)
1663 #define SM_CXCURSOR     (13)
1664 #define SM_CYCURSOR     (14)
1665 #define SM_CXDLGFRAME   (7)
1666 #define SM_CYDLGFRAME   (8)
1667 #define SM_CXDOUBLECLK  (36)
1668 #define SM_CYDOUBLECLK  (37)
1669 #define SM_CXDRAG       (68)
1670 #define SM_CYDRAG       (69)
1671 #define SM_CXEDGE       (45)
1672 #define SM_CYEDGE       (46)
1673 #define SM_CXFIXEDFRAME (7)
1674 #define SM_CYFIXEDFRAME (8)
1675 #define SM_CXFRAME      (32)
1676 #define SM_CYFRAME      (33)
1677 #define SM_CXFULLSCREEN (16)
1678 #define SM_CYFULLSCREEN (17)
1679 #define SM_CXHSCROLL    (21)
1680 #define SM_CYHSCROLL    (3)
1681 #define SM_CXHTHUMB     (10)
1682 #define SM_CXICON       (11)
1683 #define SM_CYICON       (12)
1684 #define SM_CXICONSPACING        (38)
1685 #define SM_CYICONSPACING        (39)
1686 #define SM_CXMAXIMIZED  (61)
1687 #define SM_CYMAXIMIZED  (62)
1688 #define SM_CXMAXTRACK   (59)
1689 #define SM_CYMAXTRACK   (60)
1690 #define SM_CXMENUCHECK  (71)
1691 #define SM_CYMENUCHECK  (72)
1692 #define SM_CXMENUSIZE   (54)
1693 #define SM_CYMENUSIZE   (55)
1694 #define SM_CXMINIMIZED  (57)
1695 #define SM_CYMINIMIZED  (58)
1696 #define SM_CXMINSPACING (47)
1697 #define SM_CYMINSPACING (48)
1698 #define SM_CXMINTRACK   (34)
1699 #define SM_CYMINTRACK   (35)
1700 #define SM_CXSCREEN     (0)
1701 #define SM_CYSCREEN     (1)
1702 #define SM_CXSIZE       (30)
1703 #define SM_CYSIZE       (31)
1704 #define SM_CXSIZEFRAME  (32)
1705 #define SM_CYSIZEFRAME  (33)
1706 #define SM_CXSMICON     (49)
1707 #define SM_CYSMICON     (50)
1708 #define SM_CXSMSIZE     (52)
1709 #define SM_CYSMSIZE     (53)
1710 #define SM_CXVSCROLL    (2)
1711 #define SM_CYHSCROLL    (3)
1712 #define SM_CXHSCROLL    (21)
1713 #define SM_CYVSCROLL    (20)
1714 #define SM_CYVTHUMB     (9)
1715 #define SM_CYCAPTION    (4)
1716 #define SM_CYKANJIWINDOW        (18)
1717 #define SM_CYMENU       (15)
1718 #define SM_CYSMCAPTION  (51)
1719 #define SM_DBCSENABLED  (42)
1720 #define SM_DEBUG        (22)
1721 #define SM_MENUDROPALIGNMENT    (40)
1722 #define SM_MIDEASTENABLED       (74)
1723 #define SM_MOUSEPRESENT (19)
1724 #define SM_MOUSEWHEELPRESENT    (75)
1725 #define SM_NETWORK      (63)
1726 #define SM_PENWINDOWS   (41)
1727 #define SM_SECURE       (44)
1728 #define SM_SHOWSOUNDS   (70)
1729 #define SM_SLOWMACHINE  (73)
1730 #define SM_SWAPBUTTON   (23)
1731 #define ARW_BOTTOMLEFT  (0L)
1732 #define ARW_BOTTOMRIGHT (0x1L)
1733 #define ARW_HIDE        (0x8L)
1734 #define ARW_TOPLEFT     (0x2L)
1735 #define ARW_TOPRIGHT    (0x3L)
1736 #define ARW_DOWN        (0x4L)
1737 #define ARW_LEFT        (0L)
1738 #define ARW_RIGHT       (0L)
1739 #define ARW_UP  (0x4L)
1740
1741 /* GetSystemPaletteUse */
1742 #define SYSPAL_NOSTATIC (2)
1743 #define SYSPAL_STATIC   (1)
1744 #define SYSPAL_ERROR    (0)
1745
1746 /* GetTapeParameters, SetTapeParameters */
1747 #define GET_TAPE_MEDIA_INFORMATION      (0)
1748 #define GET_TAPE_DRIVE_INFORMATION      (1)
1749 #define SET_TAPE_MEDIA_INFORMATION      (0)
1750 #define SET_TAPE_DRIVE_INFORMATION      (1)
1751
1752 /* GetTapePosition */
1753 #define TAPE_ABSOLUTE_POSITION  (0L)
1754 #define TAPE_LOGICAL_POSITION   (0x1L)
1755
1756 /* GetTextAlign */
1757 #define TA_BASELINE     (24)
1758 #define TA_BOTTOM       (8)
1759 #define TA_TOP  (0)
1760 #define TA_CENTER       (6)
1761 #define TA_LEFT (0)
1762 #define TA_RIGHT        (2)
1763 #define TA_RTLREADING   (256)
1764 #define TA_NOUPDATECP   (0)
1765 #define TA_UPDATECP     (1)
1766 #define VTA_BASELINE    (24)
1767 #define VTA_CENTER      (6)
1768
1769 /* GetThreadPriority */
1770 #define TLS_MINIMUM_AVAILABLE   (64)
1771
1772 /* GetTimeFormat */
1773 #define TIME_NOMINUTESORSECONDS (1)
1774 #define TIME_NOSECONDS  (2)
1775 #define TIME_NOTIMEMARKER       (4)
1776 #define TIME_FORCE24HOURFORMAT  (8)
1777
1778 /* GetTimeZoneInformation */
1779 #define TIME_ZONE_ID_INVALID    ((DWORD) -1)
1780 #define TIME_ZONE_ID_UNKNOWN    (0)
1781 #define TIME_ZONE_ID_STANDARD   (1)
1782 #define TIME_ZONE_ID_DAYLIGHT   (2)
1783
1784 /* GetUserObjectInformation */
1785 #define UOI_FLAGS       (1)
1786 #define UOI_NAME        (2)
1787 #define UOI_TYPE        (3)
1788
1789 /* GetWindowLong */
1790 #define GWL_EXSTYLE     (-20)
1791 #define GWL_STYLE       (-16)
1792 #define GWL_WNDPROC     (-4)
1793 #define GWL_HINSTANCE   (-6)
1794 #define GWL_HWNDPARENT  (-8)
1795 #define GWL_ID  (-12)
1796 #define GWL_USERDATA    (-21)
1797 #define DWL_DLGPROC     (4)
1798 #define DWL_MSGRESULT   (0)
1799 #define DWL_USER        (8)
1800
1801 /* GlobalAlloc, GlobalFlags */
1802 #define GMEM_FIXED      (0)
1803 #define GMEM_MOVEABLE   (2)
1804 #define GPTR    (64)
1805 #define GHND    (66)
1806 #define GMEM_DDESHARE   (8192)
1807 #define GMEM_DISCARDABLE        (256)
1808 #define GMEM_LOWER      (4096)
1809 #define GMEM_NOCOMPACT  (16)
1810 #define GMEM_NODISCARD  (32)
1811 #define GMEM_NOT_BANKED (4096)
1812 #define GMEM_NOTIFY     (16384)
1813 #define GMEM_SHARE      (8192)
1814 #define GMEM_ZEROINIT   (64)
1815 #define GMEM_DISCARDED  (16384)
1816 #define GMEM_INVALID_HANDLE     (32768)
1817 #define GMEM_LOCKCOUNT  (255)
1818    
1819 /* ImageList_Create */
1820 #define ILC_COLOR       (0)
1821 #define ILC_COLOR4      (4)
1822 #define ILC_COLOR8      (8)
1823 #define ILC_COLOR16     (16)
1824 #define ILC_COLOR24     (24)
1825 #define ILC_COLOR32     (32)
1826 #define ILC_COLORDDB    (254)
1827 #define ILC_MASK        (1)
1828 #define ILC_PALETTE     (2048)
1829
1830 /* ImageList_Draw, ImageList_DrawEx */
1831 #define ILD_BLEND25     (2)
1832 #define ILD_BLEND50     (4)
1833 #define ILD_SELECTED    (4)
1834 #define ILD_BLEND       (4)
1835 #define ILD_FOCUS       (2)
1836 #define ILD_MASK        (16)
1837 #define ILD_NORMAL      (0)
1838 #define ILD_TRANSPARENT (1)
1839 #define CLR_NONE        (0xffffffffL)
1840 #define CLR_DEFAULT     (0xff000000L)
1841
1842 /* ImageList_LoadImage */
1843 #define LR_DEFAULTCOLOR (0)
1844 #define LR_LOADFROMFILE (16)
1845 #define LR_LOADMAP3DCOLORS      (4096)
1846 #define LR_LOADTRANSPARENT      (32)
1847 #define LR_MONOCHROME   (1)
1848
1849 /* ImmConfigureIME */
1850 #define IME_CONFIG_GENERAL      (1)
1851 #define IME_CONFIG_REGISTERWORD (2)
1852 #define IME_CONFIG_SELECTDICTIONARY     (3)
1853
1854 /* ImmGetConversionList */
1855 #define GCL_CONVERSION  (1)
1856 #define GCL_REVERSECONVERSION   (2)
1857 #define GCL_REVERSE_LENGTH      (3)
1858
1859 /* ImmGetGuideLine */
1860 #define GGL_LEVEL       (1)
1861 #define GGL_INDEX       (2)
1862 #define GGL_STRING      (3)
1863 #define GGL_PRIVATE     (4)
1864 #define GL_LEVEL_ERROR  (2)
1865 #define GL_LEVEL_FATAL  (1)
1866 #define GL_LEVEL_INFORMATION    (4)
1867 #define GL_LEVEL_NOGUIDELINE    (0)
1868 #define GL_LEVEL_WARNING        (3)
1869 #define GL_ID_CANNOTSAVE        (17)
1870 #define GL_ID_NOCONVERT (32)
1871 #define GL_ID_NODICTIONARY      (16)
1872 #define GL_ID_NOMODULE  (1)
1873 #define GL_ID_READINGCONFLICT   (35)
1874 #define GL_ID_TOOMANYSTROKE     (34)
1875 #define GL_ID_TYPINGERROR       (33)
1876 #define GL_ID_UNKNOWN   (0)
1877 #define GL_ID_INPUTREADING      (36)
1878 #define GL_ID_INPUTRADICAL      (37)
1879 #define GL_ID_INPUTCODE (38)
1880 #define GL_ID_CHOOSECANDIDATE   (40)
1881 #define GL_ID_REVERSECONVERSION (41)
1882
1883 /* ImmGetProperty */
1884 #define IGP_PROPERTY    (4)
1885 #define IGP_CONVERSION  (8)
1886 #define IGP_SENTENCE    (12)
1887 #define IGP_UI  (16)
1888 #define IGP_SETCOMPSTR  (20)
1889 #define IGP_SELECT      (24)
1890 #define IME_PROP_AT_CARET       (65536)
1891 #define IME_PROP_SPECIAL_UI     (131072)
1892 #define IME_PROP_CANDLIST_START_FROM_1  (262144)
1893 #define IME_PROP_UNICODE        (524288)
1894 #define UI_CAP_2700     (1)
1895 #define UI_CAP_ROT90    (2)
1896 #define UI_CAP_ROTANY   (4)
1897 #define SCS_CAP_COMPSTR (1)
1898 #define SCS_CAP_MAKEREAD        (2)
1899 #define SELECT_CAP_CONVERSION   (1)
1900 #define SELECT_CAP_SENTENCE     (2)
1901
1902 /* ImmNotifyIME */
1903 #define NI_CHANGECANDIDATELIST  (19)
1904 #define NI_CLOSECANDIDATE       (17)
1905 #define NI_COMPOSITIONSTR       (21)
1906 #define NI_OPENCANDIDATE        (16)
1907 #define NI_SELECTCANDIDATESTR   (18)
1908 #define NI_SETCANDIDATE_PAGESIZE        (23)
1909 #define NI_SETCANDIDATE_PAGESTART       (22)
1910 #define CPS_CANCEL      (4)
1911 #define CPS_COMPLETE    (1)
1912 #define CPS_CONVERT     (2)
1913 #define CPS_REVERT      (3)
1914
1915 /* ImmSetCompositionString */
1916 #define SCS_SETSTR      (9)
1917 #define SCS_CHANGEATTR  (18)
1918 #define SCS_CHANGECLAUSE        (36)
1919
1920 /* ImmUnregisterWord */
1921 #define IME_REGWORD_STYLE_EUDC  (1)
1922 #define IME_REGWORD_STYLE_USER_FIRST    0x80000000
1923 #define IME_REGWORD_STYLE_USER_LAST     (-1)
1924
1925 /* InitializeSecurityDescriptor */
1926 #define SECURITY_DESCRIPTOR_REVISION    (1)
1927
1928 /* JournalPlaybackProc, KeyboardProc */
1929 #define HC_GETNEXT      (1)
1930 #define HC_SKIP (2)
1931 #define HC_SYSMODALOFF  (5)
1932 #define HC_SYSMODALON   (4)
1933 #define HC_NOREMOVE     (3)
1934
1935 /* keybd_event */
1936 #define KEYEVENTF_EXTENDEDKEY   (1)
1937 #define KEYEVENTF_KEYUP (2)
1938
1939 /* LoadBitmap */
1940 #define OBM_BTNCORNERS  (32758)
1941 #define OBM_BTSIZE      (32761)
1942 #define OBM_CHECK       (32760)
1943 #define OBM_CHECKBOXES  (32759)
1944 #define OBM_CLOSE       (32754)
1945 #define OBM_COMBO       (32738)
1946 #define OBM_DNARROW     (32752)
1947 #define OBM_DNARROWD    (32742)
1948 #define OBM_DNARROWI    (32736)
1949 #define OBM_LFARROW     (32750)
1950 #define OBM_LFARROWI    (32734)
1951 #define OBM_LFARROWD    (32740)
1952 #define OBM_MNARROW     (32739)
1953 #define OBM_OLD_CLOSE   (32767)
1954 #define OBM_OLD_DNARROW (32764)
1955 #define OBM_OLD_LFARROW (32762)
1956 #define OBM_OLD_REDUCE  (32757)
1957 #define OBM_OLD_RESTORE (32755)
1958 #define OBM_OLD_RGARROW (32763)
1959 #define OBM_OLD_UPARROW (32765)
1960 #define OBM_OLD_ZOOM    (32756)
1961 #define OBM_REDUCE      (32749)
1962 #define OBM_REDUCED     (32746)
1963 #define OBM_RESTORE     (32747)
1964 #define OBM_RESTORED    (32744)
1965 #define OBM_RGARROW     (32751)
1966 #define OBM_RGARROWD    (32741)
1967 #define OBM_RGARROWI    (32735)
1968 #define OBM_SIZE        (32766)
1969 #define OBM_UPARROW     (32753)
1970 #define OBM_UPARROWD    (32743)
1971 #define OBM_UPARROWI    (32737)
1972 #define OBM_ZOOM        (32748)
1973 #define OBM_ZOOMD       (32745)
1974
1975 /* LoadLibraryEx */
1976 #define DONT_RESOLVE_DLL_REFERENCES     (1)
1977 #define LOAD_LIBRARY_AS_DATAFILE        (2)
1978 #define LOAD_WITH_ALTERED_SEARCH_PATH   (8)
1979
1980 /* LocalAlloc, LocalFlags */
1981 #define LPTR    (64)
1982 #define LHND    (66)
1983 #define NONZEROLHND     (2)
1984 #define NONZEROLPTR     (0)
1985 #define LMEM_NONZEROLHND        (2)
1986 #define LMEM_NONZEROLPTR        (0)
1987 #define LMEM_FIXED      (0)
1988 #define LMEM_MOVEABLE   (2)
1989 #define LMEM_NOCOMPACT  (16)
1990 #define LMEM_NODISCARD  (32)
1991 #define LMEM_ZEROINIT   (64)
1992 #define LMEM_MODIFY     (128)
1993 #define LMEM_LOCKCOUNT  (255)
1994 #define LMEM_DISCARDABLE        (3840)
1995 #define LMEM_DISCARDED  (16384)
1996 #define LMEM_INVALID_HANDLE     (32768)
1997
1998 /* LockFileEx */
1999 #define LOCKFILE_FAIL_IMMEDIATELY       (1)
2000 #define LOCKFILE_EXCLUSIVE_LOCK (2)
2001
2002 /* LogonUser */
2003
2004 /* LZCopy, LZInit, LZRead */
2005
2006 /* MessageBeep, MessageBox */
2007 #define MB_USERICON     (0x80L)
2008 #define MB_ICONASTERISK (0x40L)
2009 #define MB_ICONEXCLAMATION      (0x30L)
2010 #define MB_ICONWARNING  (0x30L)
2011 #define MB_ICONERROR    (0x10L)
2012 #define MB_ICONHAND     (0x10L)
2013 #define MB_ICONQUESTION (0x20L)
2014 #define MB_OK   (0L)
2015 #define MB_ABORTRETRYIGNORE     (0x2L)
2016 #define MB_APPLMODAL    (0L)
2017 #define MB_DEFAULT_DESKTOP_ONLY (0x20000L)
2018 #define MB_HELP (0x4000L)
2019 #define MB_RIGHT        (0x80000L)
2020 #define MB_RTLREADING   (0x100000L)
2021 #define MB_TOPMOST      (0x40000L)
2022 #define MB_DEFBUTTON1   (0L)
2023 #define MB_DEFBUTTON2   (0x100L)
2024 #define MB_DEFBUTTON3   (0x200L)
2025 #define MB_DEFBUTTON4   (0x300L)
2026 #define MB_ICONINFORMATION      (0x40L)
2027 #define MB_ICONSTOP     (0x10L)
2028 #define MB_OKCANCEL     (0x1L)
2029 #define MB_RETRYCANCEL  (0x5L)
2030 #define MB_SERVICE_NOTIFICATION (0x40000L)
2031 #define MB_SETFOREGROUND        (0x10000L)
2032 #define MB_SYSTEMMODAL  (0x1000L)
2033 #define MB_TASKMODAL    (0x2000L)
2034 #define MB_YESNO        (0x4L)
2035 #define MB_YESNOCANCEL  (0x3L)
2036 #define IDABORT (3)
2037 #define IDCANCEL        (2)
2038 #define IDCLOSE (8)
2039 #define IDHELP  (9)
2040 #define IDIGNORE        (5)
2041 #define IDNO    (7)
2042 #define IDOK    (1)
2043 #define IDRETRY (4)
2044 #define IDYES   (6)
2045
2046 /* MessageProc */
2047 #define MSGF_DIALOGBOX  (0)
2048 #define MSGF_MENU       (2)
2049 #define MSGF_NEXTWINDOW (6)
2050 #define MSGF_SCROLLBAR  (5)
2051 #define MSGF_MAINLOOP   (8)
2052 #define MSGF_USER       (4096)
2053
2054 /* ModifyWorldTransform */
2055 #define MWT_IDENTITY    (1)
2056 #define MWT_LEFTMULTIPLY        (2)
2057 #define MWT_RIGHTMULTIPLY       (3)
2058
2059 /* mouse_event */
2060 #define MOUSEEVENTF_ABSOLUTE    (32768)
2061 #define MOUSEEVENTF_MOVE        (1)
2062 #define MOUSEEVENTF_LEFTDOWN    (2)
2063 #define MOUSEEVENTF_LEFTUP      (4)
2064 #define MOUSEEVENTF_RIGHTDOWN   (8)
2065 #define MOUSEEVENTF_RIGHTUP     (16)
2066 #define MOUSEEVENTF_MIDDLEDOWN  (32)
2067 #define MOUSEEVENTF_MIDDLEUP    (64)
2068
2069 /* MoveFileEx */
2070 #define MOVEFILE_REPLACE_EXISTING       (1)
2071 #define MOVEFILE_COPY_ALLOWED   (2)
2072 #define MOVEFILE_DELAY_UNTIL_REBOOT     (4)
2073
2074 /* MsgWaitForMultipleObjects, WaitForMultipleObjectsEx */
2075 #define WAIT_OBJECT_0   (0L)
2076 #define WAIT_ABANDONED_0        (0x80L)
2077 #define WAIT_TIMEOUT    (0x102L)
2078 #define WAIT_IO_COMPLETION      (0xc0L)
2079 #define WAIT_ABANDONED  (0x80L)
2080 #define WAIT_FAILED     (0xffffffffL)
2081 #define MAXIMUM_WAIT_OBJECTS    (0x40)
2082 #define MAXIMUM_SUSPEND_COUNT   (0x7f)
2083
2084 /* MultiByteToWideChar */
2085 #define MB_PRECOMPOSED  (1)
2086 #define MB_COMPOSITE    (2)
2087 #define MB_ERR_INVALID_CHARS    (8)
2088 #define MB_USEGLYPHCHARS        (4)
2089
2090 /* NDdeSetTrustedShare */
2091
2092 /* NetAccessCheck */
2093
2094 /* NetServerEnum */
2095
2096 /* NetServiceControl */
2097
2098 /* NetUserEnum */
2099
2100 /* OpenProcessToken */
2101
2102 /* OpenSCManager */
2103 #define SC_MANAGER_ALL_ACCESS   (0xf003fL)
2104 #define SC_MANAGER_CONNECT      (1)
2105 #define SC_MANAGER_CREATE_SERVICE       (2)
2106 #define SC_MANAGER_ENUMERATE_SERVICE    (4)
2107 #define SC_MANAGER_LOCK (8)
2108 #define SC_MANAGER_QUERY_LOCK_STATUS    (16)
2109 #define SC_MANAGER_MODIFY_BOOT_CONFIG   (32)
2110
2111 /* PostMessage */
2112 #define HWND_BROADCAST  ((HWND)0xFFFF)
2113
2114 /* PrepareTape */
2115 #define TAPE_FORMAT     (0x5L)
2116 #define TAPE_LOAD       (0L)
2117 #define TAPE_LOCK       (0x3L)
2118 #define TAPE_TENSION    (0x2L)
2119 #define TAPE_UNLOAD     (0x1L)
2120 #define TAPE_UNLOCK     (0x4L)
2121
2122 /* PropertySheet */
2123 #define IS_PSREBOOTSYSTEM       (3)
2124 #define IS_PSRESTARTWINDOWS     (2)
2125
2126 /* PropSheetPageProc */
2127 #define PSPCB_CREATE    (2)
2128 #define PSPCB_RELEASE   (1)
2129
2130 /* PurgeComm */
2131 #define PURGE_TXABORT   (1)
2132 #define PURGE_RXABORT   (2)
2133 #define PURGE_TXCLEAR   (4)
2134 #define PURGE_RXCLEAR   (8)
2135
2136 /* QueryServiceObjectSecurity */
2137 #define OWNER_SECURITY_INFORMATION      (0x1L)
2138 #define GROUP_SECURITY_INFORMATION      (0x2L)
2139 #define DACL_SECURITY_INFORMATION       (0x4L)
2140 #define SACL_SECURITY_INFORMATION       (0x8L)
2141
2142 /* ReadEventLog, ReportEvent */
2143 #define EVENTLOG_FORWARDS_READ  (4)
2144 #define EVENTLOG_BACKWARDS_READ (8)
2145 #define EVENTLOG_SEEK_READ      (2)
2146 #define EVENTLOG_SEQUENTIAL_READ        (1)
2147 #define EVENTLOG_ERROR_TYPE     (1)
2148 #define EVENTLOG_WARNING_TYPE   (2)
2149 #define EVENTLOG_INFORMATION_TYPE       (4)
2150 #define EVENTLOG_AUDIT_SUCCESS  (8)
2151 #define EVENTLOG_AUDIT_FAILURE  (16)
2152
2153 /* RedrawWindow */
2154 #define RDW_ERASE       (4)
2155 #define RDW_FRAME       (1024)
2156 #define RDW_INTERNALPAINT       (2)
2157 #define RDW_INVALIDATE  (1)
2158 #define RDW_NOERASE     (32)
2159 #define RDW_NOFRAME     (2048)
2160 #define RDW_NOINTERNALPAINT     (16)
2161 #define RDW_VALIDATE    (8)
2162 #define RDW_ERASENOW    (512)
2163 #define RDW_UPDATENOW   (256)
2164 #define RDW_ALLCHILDREN (128)
2165 #define RDW_NOCHILDREN  (64)
2166
2167 /* RegCreateKey */
2168 #define HKEY_CLASSES_ROOT       ((HKEY)0x80000000)
2169 #define HKEY_CURRENT_USER       ((HKEY)0x80000001)
2170 #define HKEY_LOCAL_MACHINE      ((HKEY)0x80000002)
2171 #define HKEY_USERS              ((HKEY)0x80000003)
2172 #define HKEY_PERFORMANCE_DATA   ((HKEY)0x80000004)
2173 #define HKEY_CURRENT_CONFIG     ((HKEY)0x80000005)
2174 #define HKEY_DYN_DATA           ((HKEY)0x00000006)
2175
2176 /* RegCreateKeyEx */
2177
2178 /* RegEnumValue */
2179
2180 /* RegisterHotKey */
2181 #define MOD_ALT (1)
2182 #define MOD_CONTROL     (2)
2183 #define MOD_SHIFT       (4)
2184 #define MOD_WIN (8)
2185 #define IDHOT_SNAPDESKTOP       (-2)
2186 #define IDHOT_SNAPWINDOW        (-1)
2187
2188 /* RegNotifyChangeKeyValue */
2189 #define REG_NOTIFY_CHANGE_NAME  (0x1L)
2190 #define REG_NOTIFY_CHANGE_ATTRIBUTES    (0x2L)
2191 #define REG_NOTIFY_CHANGE_LAST_SET      (0x4L)
2192 #define REG_NOTIFY_CHANGE_SECURITY      (0x8L)
2193
2194 /* ScrollWindowEx */
2195 #define SW_ERASE        (4)
2196 #define SW_INVALIDATE   (2)
2197 #define SW_SCROLLCHILDREN       (1)
2198
2199 /* SendMessageTimeout */
2200 #define SMTO_ABORTIFHUNG        (2)
2201 #define SMTO_BLOCK      (1)
2202 #define SMTO_NORMAL     (0)
2203
2204 /* SetBkMode */
2205 #define OPAQUE  (2)
2206 #define TRANSPARENT     (1)
2207
2208 /* SetDebugErrorLevel */
2209 #define SLE_ERROR       (1)
2210 #define SLE_MINORERROR  (2)
2211 #define SLE_WARNING     (3)
2212
2213 /* SetErrorMode */
2214 #define SEM_FAILCRITICALERRORS  (1)
2215 #define SEM_NOALIGNMENTFAULTEXCEPT      (4)
2216 #define SEM_NOGPFAULTERRORBOX   (2)
2217 #define SEM_NOOPENFILEERRORBOX  (32768)
2218
2219 /* SetICMMode */
2220 #define ICM_ON  (2)
2221 #define ICM_OFF (1)
2222 #define ICM_QUERY       (3)
2223
2224 /* SetJob */
2225
2226 /* Locale Information */
2227 #define LOCALE_ILANGUAGE        (1)
2228 #define LOCALE_SLANGUAGE        (2)
2229 #define LOCALE_SENGLANGUAGE     (4097)
2230 #define LOCALE_SABBREVLANGNAME  (3)
2231 #define LOCALE_SNATIVELANGNAME  (4)
2232 #define LOCALE_ICOUNTRY (5)
2233 #define LOCALE_SCOUNTRY (6)
2234 #define LOCALE_SENGCOUNTRY      (4098)
2235 #define LOCALE_SABBREVCTRYNAME  (7)
2236 #define LOCALE_SNATIVECTRYNAME  (8)
2237 #define LOCALE_IDEFAULTLANGUAGE (9)
2238 #define LOCALE_IDEFAULTCOUNTRY  (10)
2239 #define LOCALE_IDEFAULTANSICODEPAGE     (4100)
2240 #define LOCALE_IDEFAULTCODEPAGE (11)
2241 #define LOCALE_SLIST    (12)
2242 #define LOCALE_IMEASURE (13)
2243 #define LOCALE_SDECIMAL (14)
2244 #define LOCALE_STHOUSAND        (15)
2245 #define LOCALE_SGROUPING        (16)
2246 #define LOCALE_IDIGITS  (17)
2247 #define LOCALE_ILZERO   (18)
2248 #define LOCALE_INEGNUMBER       (4112)
2249 #define LOCALE_SCURRENCY        (20)
2250 #define LOCALE_SMONDECIMALSEP   (22)
2251 #define LOCALE_SMONTHOUSANDSEP  (23)
2252 #define LOCALE_SMONGROUPING     (24)
2253 #define LOCALE_ICURRDIGITS      (25)
2254 #define LOCALE_ICURRENCY        (27)
2255 #define LOCALE_INEGCURR (28)
2256 #define LOCALE_SDATE    (29)
2257 #define LOCALE_STIME    (30)
2258 #define LOCALE_STIMEFORMAT      (4099)
2259 #define LOCALE_SSHORTDATE       (31)
2260 #define LOCALE_SLONGDATE        (32)
2261 #define LOCALE_IDATE    (33)
2262 #define LOCALE_ILDATE   (34)
2263 #define LOCALE_ITIME    (35)
2264 #define LOCALE_ITLZERO  (37)
2265 #define LOCALE_IDAYLZERO        (38)
2266 #define LOCALE_IMONLZERO        (39)
2267 #define LOCALE_S1159    (40)
2268 #define LOCALE_S2359    (41)
2269 #define LOCALE_ICALENDARTYPE    (4105)
2270 #define LOCALE_IOPTIONALCALENDAR        (4107)
2271 #define LOCALE_IFIRSTDAYOFWEEK  (4108)
2272 #define LOCALE_IFIRSTWEEKOFYEAR (4109)
2273 #define LOCALE_SDAYNAME1        (42)
2274 #define LOCALE_SDAYNAME2        (43)
2275 #define LOCALE_SDAYNAME3        (44)
2276 #define LOCALE_SDAYNAME4        (45)
2277 #define LOCALE_SDAYNAME5        (46)
2278 #define LOCALE_SDAYNAME6        (47)
2279 #define LOCALE_SDAYNAME7        (48)
2280 #define LOCALE_SABBREVDAYNAME1  (49)
2281 #define LOCALE_SABBREVDAYNAME2  (50)
2282 #define LOCALE_SABBREVDAYNAME3  (51)
2283 #define LOCALE_SABBREVDAYNAME4  (52)
2284 #define LOCALE_SABBREVDAYNAME5  (53)
2285 #define LOCALE_SABBREVDAYNAME6  (54)
2286 #define LOCALE_SABBREVDAYNAME7  (55)
2287 #define LOCALE_SMONTHNAME1      (56)
2288 #define LOCALE_SMONTHNAME2      (57)
2289 #define LOCALE_SMONTHNAME3      (58)
2290 #define LOCALE_SMONTHNAME4      (59)
2291 #define LOCALE_SMONTHNAME5      (60)
2292 #define LOCALE_SMONTHNAME6      (61)
2293 #define LOCALE_SMONTHNAME7      (62)
2294 #define LOCALE_SMONTHNAME8      (63)
2295 #define LOCALE_SMONTHNAME9      (64)
2296 #define LOCALE_SMONTHNAME10     (65)
2297 #define LOCALE_SMONTHNAME11     (66)
2298 #define LOCALE_SMONTHNAME12     (67)
2299 #define LOCALE_SMONTHNAME13     (4110)
2300 #define LOCALE_SABBREVMONTHNAME1        (68)
2301 #define LOCALE_SABBREVMONTHNAME2        (69)
2302 #define LOCALE_SABBREVMONTHNAME3        (70)
2303 #define LOCALE_SABBREVMONTHNAME4        (71)
2304 #define LOCALE_SABBREVMONTHNAME5        (72)
2305 #define LOCALE_SABBREVMONTHNAME6        (73)
2306 #define LOCALE_SABBREVMONTHNAME7        (74)
2307 #define LOCALE_SABBREVMONTHNAME8        (75)
2308 #define LOCALE_SABBREVMONTHNAME9        (76)
2309 #define LOCALE_SABBREVMONTHNAME10       (77)
2310 #define LOCALE_SABBREVMONTHNAME11       (78)
2311 #define LOCALE_SABBREVMONTHNAME12       (79)
2312 #define LOCALE_SABBREVMONTHNAME13       (4111)
2313 #define LOCALE_SPOSITIVESIGN    (80)
2314 #define LOCALE_SNEGATIVESIGN    (81)
2315 #define LOCALE_IPOSSIGNPOSN     (82)
2316 #define LOCALE_INEGSIGNPOSN     (83)
2317 #define LOCALE_IPOSSYMPRECEDES  (84)
2318 #define LOCALE_IPOSSEPBYSPACE   (85)
2319 #define LOCALE_INEGSYMPRECEDES  (86)
2320 #define LOCALE_INEGSEPBYSPACE   (87)
2321 #define LOCALE_NOUSEROVERRIDE   (0x80000000)
2322
2323 /* Calendar Type Information */
2324 #define CAL_ICALINTVALUE        (1)
2325 #define CAL_IYEAROFFSETRANGE    (3)
2326 #define CAL_SABBREVDAYNAME1     (14)
2327 #define CAL_SABBREVDAYNAME2     (15)
2328 #define CAL_SABBREVDAYNAME3     (16)
2329 #define CAL_SABBREVDAYNAME4     (17)
2330 #define CAL_SABBREVDAYNAME5     (18)
2331 #define CAL_SABBREVDAYNAME6     (19)
2332 #define CAL_SABBREVDAYNAME7     (20)
2333 #define CAL_SABBREVMONTHNAME1   (34)
2334 #define CAL_SABBREVMONTHNAME2   (35)
2335 #define CAL_SABBREVMONTHNAME3   (36)
2336 #define CAL_SABBREVMONTHNAME4   (37)
2337 #define CAL_SABBREVMONTHNAME5   (38)
2338 #define CAL_SABBREVMONTHNAME6   (39)
2339 #define CAL_SABBREVMONTHNAME7   (40)
2340 #define CAL_SABBREVMONTHNAME8   (41)
2341 #define CAL_SABBREVMONTHNAME9   (42)
2342 #define CAL_SABBREVMONTHNAME10  (43)
2343 #define CAL_SABBREVMONTHNAME11  (44)
2344 #define CAL_SABBREVMONTHNAME12  (45)
2345 #define CAL_SABBREVMONTHNAME13  (46)
2346 #define CAL_SCALNAME    (2)
2347 #define CAL_SDAYNAME1   (7)
2348 #define CAL_SDAYNAME2   (8)
2349 #define CAL_SDAYNAME3   (9)
2350 #define CAL_SDAYNAME4   (10)
2351 #define CAL_SDAYNAME5   (11)
2352 #define CAL_SDAYNAME6   (12)
2353 #define CAL_SDAYNAME7   (13)
2354 #define CAL_SERASTRING  (4)
2355 #define CAL_SLONGDATE   (6)
2356 #define CAL_SMONTHNAME1 (21)
2357 #define CAL_SMONTHNAME2 (22)
2358 #define CAL_SMONTHNAME3 (23)
2359 #define CAL_SMONTHNAME4 (24)
2360 #define CAL_SMONTHNAME5 (25)
2361 #define CAL_SMONTHNAME6 (26)
2362 #define CAL_SMONTHNAME7 (27)
2363 #define CAL_SMONTHNAME8 (28)
2364 #define CAL_SMONTHNAME9 (29)
2365 #define CAL_SMONTHNAME10        (30)
2366 #define CAL_SMONTHNAME11        (31)
2367 #define CAL_SMONTHNAME12        (32)
2368 #define CAL_SMONTHNAME13        (33)
2369 #define CAL_SSHORTDATE  (5)
2370
2371 /* SetProcessWorkingSetSize */
2372
2373 /* SetPrinter */
2374
2375 /* SetService */
2376
2377 /* SetStretchBltMode */
2378 #define BLACKONWHITE    (1)
2379 #define COLORONCOLOR    (3)
2380 #define HALFTONE        (4)
2381 #define STRETCH_ANDSCANS        (1)
2382 #define STRETCH_DELETESCANS     (3)
2383 #define STRETCH_HALFTONE        (4)
2384 #define STRETCH_ORSCANS (2)
2385 #define WHITEONBLACK    (2)
2386
2387 /* SetSystemCursor */
2388 #define OCR_NORMAL      (32512)
2389 #define OCR_IBEAM       (32513)
2390 #define OCR_WAIT        (32514)
2391 #define OCR_CROSS       (32515)
2392 #define OCR_UP  (32516)
2393 #define OCR_SIZE        (32640)
2394 #define OCR_ICON        (32641)
2395 #define OCR_SIZENWSE    (32642)
2396 #define OCR_SIZENESW    (32643)
2397 #define OCR_SIZEWE      (32644)
2398 #define OCR_SIZENS      (32645)
2399 #define OCR_SIZEALL     (32646)
2400 #define OCR_NO  (32648)
2401 #define OCR_APPSTARTING (32650)
2402
2403 /* SetTapePosition */
2404 #define TAPE_ABSOLUTE_BLOCK     (0x1L)
2405 #define TAPE_LOGICAL_BLOCK      (0x2L)
2406 #define TAPE_REWIND     (0L)
2407 #define TAPE_SPACE_END_OF_DATA  (0x4L)
2408 #define TAPE_SPACE_FILEMARKS    (0x6L)
2409 #define TAPE_SPACE_RELATIVE_BLOCKS      (0x5L)
2410 #define TAPE_SPACE_SEQUENTIAL_FMKS      (0x7L)
2411 #define TAPE_SPACE_SEQUENTIAL_SMKS      (0x9L)
2412 #define TAPE_SPACE_SETMARKS     (0x8L)
2413
2414 /* SetUnhandledExceptionFilter */
2415 #define EXCEPTION_EXECUTE_HANDLER       (1)
2416 #define EXCEPTION_CONTINUE_EXECUTION    (-1)
2417 #define EXCEPTION_CONTINUE_SEARCH       (0)
2418
2419 /* SetWindowPos, DeferWindowPos */
2420 #define HWND_BOTTOM     ((HWND)1)
2421 #define HWND_NOTOPMOST  ((HWND)-2)
2422 #define HWND_TOP        ((HWND)0)
2423 #define HWND_TOPMOST    ((HWND)-1)
2424 #define SWP_DRAWFRAME   (32)
2425 #define SWP_FRAMECHANGED        (32)
2426 #define SWP_HIDEWINDOW  (128)
2427 #define SWP_NOACTIVATE  (16)
2428 #define SWP_NOCOPYBITS  (256)
2429 #define SWP_NOMOVE      (2)
2430 #define SWP_NOSIZE      (1)
2431 #define SWP_NOREDRAW    (8)
2432 #define SWP_NOZORDER    (4)
2433 #define SWP_SHOWWINDOW  (64)
2434 #define SWP_NOOWNERZORDER       (512)
2435 #define SWP_NOREPOSITION        (512)
2436 #define SWP_NOSENDCHANGING      (1024)
2437
2438 /* SHAddToRecentDocs */
2439
2440 /* SHAppBarMessage */
2441
2442 /* SHChangeNotify */
2443
2444 /* ShellProc */
2445 #define HSHELL_ACTIVATESHELLWINDOW      (3)
2446 #define HSHELL_GETMINRECT       (5)
2447 #define HSHELL_LANGUAGE (8)
2448 #define HSHELL_REDRAW   (6)
2449 #define HSHELL_TASKMAN  (7)
2450 #define HSHELL_WINDOWACTIVATED  (4)
2451 #define HSHELL_WINDOWCREATED    (1)
2452 #define HSHELL_WINDOWDESTROYED  (2)
2453
2454 /* SHGetFileInfo */
2455
2456 /* SHGetSpecialFolderLocation */
2457
2458 /* ShowWindow */
2459 #define SW_HIDE (0)
2460 #define SW_MAXIMIZE     (3)
2461 #define SW_MINIMIZE     (6)
2462 #define SW_NORMAL       (1)
2463 #define SW_RESTORE      (9)
2464 #define SW_SHOW (5)
2465 #define SW_SHOWDEFAULT  (10)
2466 #define SW_SHOWMAXIMIZED        (3)
2467 #define SW_SHOWMINIMIZED        (2)
2468 #define SW_SHOWMINNOACTIVE      (7)
2469 #define SW_SHOWNA       (8)
2470 #define SW_SHOWNOACTIVATE       (4)
2471 #define SW_SHOWNORMAL   (1)
2472 #define WPF_RESTORETOMAXIMIZED  (2)
2473 #define WPF_SETMINPOSITION      (1)
2474
2475 /* Sleep */
2476 #define INFINITE        0xFFFFFFFF
2477
2478 /* SystemParametersInfo */
2479 #define SPI_GETACCESSTIMEOUT    (60)
2480 #define SPI_GETANIMATION        (72)
2481 #define SPI_GETBEEP     (1)
2482 #define SPI_GETBORDER   (5)
2483 #define SPI_GETDEFAULTINPUTLANG (89)
2484 #define SPI_GETDRAGFULLWINDOWS  (38)
2485 #define SPI_GETFASTTASKSWITCH   (35)
2486 #define SPI_GETFILTERKEYS       (50)
2487 #define SPI_GETFONTSMOOTHING    (74)
2488 #define SPI_GETGRIDGRANULARITY  (18)
2489 #define SPI_GETHIGHCONTRAST     (66)
2490 #define SPI_GETICONMETRICS      (45)
2491 #define SPI_GETICONTITLELOGFONT (31)
2492 #define SPI_GETICONTITLEWRAP    (25)
2493 #define SPI_GETKEYBOARDDELAY    (22)
2494 #define SPI_GETKEYBOARDPREF     (68)
2495 #define SPI_GETKEYBOARDSPEED    (10)
2496 #define SPI_GETLOWPOWERACTIVE   (83)
2497 #define SPI_GETLOWPOWERTIMEOUT  (79)
2498 #define SPI_GETMENUDROPALIGNMENT        (27)
2499 #define SPI_GETMINIMIZEDMETRICS (43)
2500 #define SPI_GETMOUSE    (3)
2501 #define SPI_GETMOUSEKEYS        (54)
2502 #define SPI_GETMOUSETRAILS      (94)
2503 #define SPI_GETNONCLIENTMETRICS (41)
2504 #define SPI_GETPOWEROFFACTIVE   (84)
2505 #define SPI_GETPOWEROFFTIMEOUT  (80)
2506 #define SPI_GETSCREENREADER     (70)
2507 #define SPI_GETSCREENSAVEACTIVE (16)
2508 #define SPI_GETSCREENSAVETIMEOUT        (14)
2509 #define SPI_GETSERIALKEYS       (62)
2510 #define SPI_GETSHOWSOUNDS       (56)
2511 #define SPI_GETSOUNDSENTRY      (64)
2512 #define SPI_GETSTICKYKEYS       (58)
2513 #define SPI_GETTOGGLEKEYS       (52)
2514 #define SPI_GETWINDOWSEXTENSION (92)
2515 #define SPI_GETWORKAREA (48)
2516 #define SPI_ICONHORIZONTALSPACING       (13)
2517 #define SPI_ICONVERTICALSPACING (24)
2518 #define SPI_LANGDRIVER  (12)
2519 #define SPI_SCREENSAVERRUNNING  (97)
2520 #define SPI_SETACCESSTIMEOUT    (61)
2521 #define SPI_SETANIMATION        (73)
2522 #define SPI_SETBEEP     (2)
2523 #define SPI_SETBORDER   (6)
2524 #define SPI_SETDEFAULTINPUTLANG (90)
2525 #define SPI_SETDESKPATTERN      (21)
2526 #define SPI_SETDESKWALLPAPER    (20)
2527 #define SPI_SETDOUBLECLICKTIME  (32)
2528 #define SPI_SETDOUBLECLKHEIGHT  (30)
2529 #define SPI_SETDOUBLECLKWIDTH   (29)
2530 #define SPI_SETDRAGFULLWINDOWS  (37)
2531 #define SPI_SETDRAGHEIGHT       (77)
2532 #define SPI_SETDRAGWIDTH        (76)
2533 #define SPI_SETFASTTASKSWITCH   (36)
2534 #define SPI_SETFILTERKEYS       (51)
2535 #define SPI_SETFONTSMOOTHING    (75)
2536 #define SPI_SETGRIDGRANULARITY  (19)
2537 #define SPI_SETHANDHELD (78)
2538 #define SPI_SETHIGHCONTRAST     (67)
2539 #define SPI_SETICONMETRICS      (46)
2540 #define SPI_SETICONTITLELOGFONT (34)
2541 #define SPI_SETICONTITLEWRAP    (26)
2542 #define SPI_SETKEYBOARDDELAY    (23)
2543 #define SPI_SETKEYBOARDPREF     (69)
2544 #define SPI_SETKEYBOARDSPEED    (11)
2545 #define SPI_SETLANGTOGGLE       (91)
2546 #define SPI_SETLOWPOWERACTIVE   (85)
2547 #define SPI_SETLOWPOWERTIMEOUT  (81)
2548 #define SPI_SETMENUDROPALIGNMENT        (28)
2549 #define SPI_SETMINIMIZEDMETRICS (44)
2550 #define SPI_SETMOUSE    (4)
2551 #define SPI_SETMOUSEBUTTONSWAP  (33)
2552 #define SPI_SETMOUSEKEYS        (55)
2553 #define SPI_SETMOUSETRAILS      (93)
2554 #define SPI_SETNONCLIENTMETRICS (42)
2555 #define SPI_SETPENWINDOWS       (49)
2556 #define SPI_SETPOWEROFFACTIVE   (86)
2557 #define SPI_SETPOWEROFFTIMEOUT  (82)
2558 #define SPI_SETSCREENREADER     (71)
2559 #define SPI_SETSCREENSAVEACTIVE (17)
2560 #define SPI_SETSCREENSAVETIMEOUT        (15)
2561 #define SPI_SETSERIALKEYS       (63)
2562 #define SPI_SETSHOWSOUNDS       (57)
2563 #define SPI_SETSOUNDSENTRY      (65)
2564 #define SPI_SETSTICKYKEYS       (59)
2565 #define SPI_SETTOGGLEKEYS       (53)
2566 #define SPI_SETWORKAREA (47)
2567 #define SPIF_UPDATEINIFILE      (1)
2568 #define SPIF_SENDWININICHANGE   (2)
2569 #define SPIF_SENDCHANGE (2)
2570
2571 /* TrackPopupMenu, TrackPopMenuEx */
2572 #define TPM_CENTERALIGN (0x4L)
2573 #define TPM_LEFTALIGN   (0L)
2574 #define TPM_RIGHTALIGN  (0x8L)
2575 #define TPM_LEFTBUTTON  (0L)
2576 #define TPM_RIGHTBUTTON (0x2L)
2577 #define TPM_HORIZONTAL  (0L)
2578 #define TPM_VERTICAL    (0x40L)
2579
2580 /* TranslateCharsetInfo */
2581 #define TCI_SRCCHARSET  (1)
2582 #define TCI_SRCCODEPAGE (2)
2583 #define TCI_SRCFONTSIG  (3)
2584
2585 /* VerFindFile */
2586 #define VFFF_ISSHAREDFILE       (1)
2587 #define VFF_CURNEDEST   (1)
2588 #define VFF_FILEINUSE   (2)
2589 #define VFF_BUFFTOOSMALL        (4)
2590
2591 /* VerInstallFile */
2592 #define VIFF_FORCEINSTALL       (1)
2593 #define VIFF_DONTDELETEOLD      (2)
2594 #define VIF_TEMPFILE    (0x1L)
2595 #define VIF_MISMATCH    (0x2L)
2596 #define VIF_SRCOLD      (0x4L)
2597 #define VIF_DIFFLANG    (0x8L)
2598 #define VIF_DIFFCODEPG  (0x10L)
2599 #define VIF_DIFFTYPE    (0x20L)
2600 #define VIF_WRITEPROT   (0x40L)
2601 #define VIF_FILEINUSE   (0x80L)
2602 #define VIF_OUTOFSPACE  (0x100L)
2603 #define VIF_ACCESSVIOLATION     (0x200L)
2604 #define VIF_SHARINGVIOLATION    (0x400L)
2605 #define VIF_CANNOTCREATE        (0x800L)
2606 #define VIF_CANNOTDELETE        (0x1000L)
2607 #define VIF_CANNOTDELETECUR     (0x4000L)
2608 #define VIF_CANNOTRENAME        (0x2000L)
2609 #define VIF_OUTOFMEMORY (0x8000L)
2610 #define VIF_CANNOTREADSRC       (0x10000L)
2611 #define VIF_CANNOTREADDST       (0x20000L)
2612 #define VIF_BUFFTOOSMALL        (0x40000L)
2613
2614 /* WideCharToMultiByte */
2615 #define WC_COMPOSITECHECK       (512)
2616 #define WC_DISCARDNS    (16)
2617 #define WC_SEPCHARS     (32)
2618 #define WC_DEFAULTCHAR  (64)
2619
2620 /* WinHelp */
2621 #define HELP_COMMAND    (0x102L)
2622 #define HELP_CONTENTS   (0x3L)
2623 #define HELP_CONTEXT    (0x1L)
2624 #define HELP_CONTEXTPOPUP       (0x8L)
2625 #define HELP_FORCEFILE  (0x9L)
2626 #define HELP_HELPONHELP (0x4L)
2627 #define HELP_INDEX      (0x3L)
2628 #define HELP_KEY        (0x101L)
2629 #define HELP_MULTIKEY   (0x201L)
2630 #define HELP_SETWINPOS  (0x0203L)
2631 #define HELP_PARTIALKEY (0x105L)
2632 #define HELP_QUIT       (0x2L)
2633 #define HELP_SETCONTENTS        (0x5L)
2634 #define HELP_SETINDEX   (0x5L)
2635 #define HELP_CONTEXTMENU        (0xa)
2636 #define HELP_FINDER     (0xb)
2637 #define HELP_WM_HELP    (0xc)
2638 #define HELP_TCARD      (0x8000)
2639 #define HELP_TCARD_DATA (0x10)
2640 #define HELP_TCARD_OTHER_CALLER (0x11)
2641
2642 /* WNetAddConnectino2 */
2643 #define CONNECT_UPDATE_PROFILE  (1)
2644
2645 /* WNetConnectionDialog, WNetDisconnectDialog, WNetOpenEnum */
2646 #define RESOURCETYPE_DISK       (1)
2647 #define RESOURCETYPE_PRINT      (2)
2648 #define RESOURCETYPE_ANY        (0)
2649 #define RESOURCE_CONNECTED      (1)
2650 #define RESOURCE_GLOBALNET      (2)
2651 #define RESOURCE_REMEMBERED     (3)
2652 #define RESOURCEUSAGE_CONNECTABLE       (1)
2653 #define RESOURCEUSAGE_CONTAINER (2)
2654
2655 /* WNetGetResourceInformation, WNetGetResourceParent */
2656 #define WN_BAD_NETNAME  (0x43L)
2657 #define WN_EXTENDED_ERROR       (0x4b8L)
2658 #define WN_MORE_DATA    (0xeaL)
2659 #define WN_NO_NETWORK   (0x4c6L)
2660 #define WN_SUCCESS      (0L)
2661 #define WN_ACCESS_DENIED        (0x5L)
2662 #define WN_BAD_PROVIDER (0x4b4L)
2663 #define WN_NOT_AUTHENTICATED    (0x4dcL)
2664
2665 /* WNetGetUniversalName */
2666 #define UNIVERSAL_NAME_INFO_LEVEL       (1)
2667 #define REMOTE_NAME_INFO_LEVEL  (2)
2668
2669 /* GetExitCodeThread */
2670 #define STILL_ACTIVE    (0x103L)
2671
2672 /* COMMPROP structure */
2673 #define SP_SERIALCOMM   (0x1L)
2674 #define BAUD_075        (0x1L)
2675 #define BAUD_110        (0x2L)
2676 #define BAUD_134_5      (0x4L)
2677 #define BAUD_150        (0x8L)
2678 #define BAUD_300        (0x10L)
2679 #define BAUD_600        (0x20L)
2680 #define BAUD_1200       (0x40L)
2681 #define BAUD_1800       (0x80L)
2682 #define BAUD_2400       (0x100L)
2683 #define BAUD_4800       (0x200L)
2684 #define BAUD_7200       (0x400L)
2685 #define BAUD_9600       (0x800L)
2686 #define BAUD_14400      (0x1000L)
2687 #define BAUD_19200      (0x2000L)
2688 #define BAUD_38400      (0x4000L)
2689 #define BAUD_56K        (0x8000L)
2690 #define BAUD_57600      (0x40000L)
2691 #define BAUD_115200     (0x20000L)
2692 #define BAUD_128K       (0x10000L)
2693 #define BAUD_USER       (0x10000000L)
2694 #define PST_FAX (0x21L)
2695 #define PST_LAT (0x101L)
2696 #define PST_MODEM       (0x6L)
2697 #define PST_NETWORK_BRIDGE      (0x100L)
2698 #define PST_PARALLELPORT        (0x2L)
2699 #define PST_RS232       (0x1L)
2700 #define PST_RS422       (0x3L)
2701 #define PST_RS423       (0x4L)
2702 #define PST_RS449       (0x5L)
2703 #define PST_SCANNER     (0x22L)
2704 #define PST_TCPIP_TELNET        (0x102L)
2705 #define PST_UNSPECIFIED (0L)
2706 #define PST_X25 (0x103L)
2707 #define PCF_16BITMODE   (0x200L)
2708 #define PCF_DTRDSR      (0x1L)
2709 #define PCF_INTTIMEOUTS (0x80L)
2710 #define PCF_PARITY_CHECK        (0x8L)
2711 #define PCF_RLSD        (0x4L)
2712 #define PCF_RTSCTS      (0x2L)
2713 #define PCF_SETXCHAR    (0x20L)
2714 #define PCF_SPECIALCHARS        (0x100L)
2715 #define PCF_TOTALTIMEOUTS       (0x40L)
2716 #define PCF_XONXOFF     (0x10L)
2717 #define SP_BAUD (0x2L)
2718 #define SP_DATABITS     (0x4L)
2719 #define SP_HANDSHAKING  (0x10L)
2720 #define SP_PARITY       (0x1L)
2721 #define SP_PARITY_CHECK (0x20L)
2722 #define SP_RLSD (0x40L)
2723 #define SP_STOPBITS     (0x8L)
2724 #define DATABITS_5      (1)
2725 #define DATABITS_6      (2)
2726 #define DATABITS_7      (4)
2727 #define DATABITS_8      (8)
2728 #define DATABITS_16     (16)
2729 #define DATABITS_16X    (32)
2730 #define STOPBITS_10     (1)
2731 #define STOPBITS_15     (2)
2732 #define STOPBITS_20     (4)
2733 #define PARITY_NONE     (256)
2734 #define PARITY_ODD      (512)
2735 #define PARITY_EVEN     (1024)
2736 #define PARITY_MARK     (2048)
2737 #define PARITY_SPACE    (4096)
2738 #define COMMPROP_INITIALIZED    (0xe73cf52eL)
2739
2740 /* DCB structure */
2741 #define CBR_110 (110)
2742 #define CBR_300 (300)
2743 #define CBR_600 (600)
2744 #define CBR_1200        (1200)
2745 #define CBR_2400        (2400)
2746 #define CBR_4800        (4800)
2747 #define CBR_9600        (9600)
2748 #define CBR_14400       (14400)
2749 #define CBR_19200       (19200)
2750 #define CBR_38400       (38400)
2751 #define CBR_56000       (56000)
2752 #define CBR_57600       (57600)
2753 #define CBR_115200      (115200)
2754 #define CBR_128000      (128000)
2755 #define CBR_256000      (256000)
2756 #define DTR_CONTROL_DISABLE     (0)
2757 #define DTR_CONTROL_ENABLE      (1)
2758 #define DTR_CONTROL_HANDSHAKE   (2)
2759 #define RTS_CONTROL_DISABLE     (0)
2760 #define RTS_CONTROL_ENABLE      (1)
2761 #define RTS_CONTROL_HANDSHAKE   (2)
2762 #define RTS_CONTROL_TOGGLE      (3)
2763 #define EVENPARITY      (2)
2764 #define MARKPARITY      (3)
2765 #define NOPARITY        (0)
2766 #define ODDPARITY       (1)
2767 #define SPACEPARITY     (4)
2768 #define ONESTOPBIT      (0)
2769 #define ONE5STOPBITS    (1)
2770 #define TWOSTOPBITS     (2)
2771
2772 /* Debugging events */
2773 #define CREATE_PROCESS_DEBUG_EVENT      (3)
2774 #define CREATE_THREAD_DEBUG_EVENT       (2)
2775 #define EXCEPTION_DEBUG_EVENT   (1)
2776 #define EXIT_PROCESS_DEBUG_EVENT        (5)
2777 #define EXIT_THREAD_DEBUG_EVENT (4)
2778 #define LOAD_DLL_DEBUG_EVENT    (6)
2779 #define OUTPUT_DEBUG_STRING_EVENT       (8)
2780 #define UNLOAD_DLL_DEBUG_EVENT  (7)
2781 #define RIP_EVENT       (9)
2782
2783 /* PROCESS_HEAP_ENTRY structure */
2784 #define PROCESS_HEAP_REGION     (1)
2785 #define PROCESS_HEAP_UNCOMMITTED_RANGE  (2)
2786 #define PROCESS_HEAP_ENTRY_BUSY (4)
2787 #define PROCESS_HEAP_ENTRY_MOVEABLE     (16)
2788 #define PROCESS_HEAP_ENTRY_DDESHARE     (32)
2789
2790 /* Win32s */
2791 #define HINSTANCE_ERROR (32)
2792
2793 /* WIN32_STREAM_ID structure */
2794 #define BACKUP_DATA     (1)
2795 #define BACKUP_EA_DATA  (2)
2796 #define BACKUP_SECURITY_DATA    (3)
2797 #define BACKUP_ALTERNATE_DATA   (4)
2798 #define BACKUP_LINK     (5)
2799 #define STREAM_MODIFIED_WHEN_READ       (1)
2800 #define STREAM_CONTAINS_SECURITY        (2)
2801
2802 /* STARTUPINFO structure */
2803 #define STARTF_USESHOWWINDOW    (1)
2804 #define STARTF_USEPOSITION      (4)
2805 #define STARTF_USESIZE  (2)
2806 #define STARTF_USECOUNTCHARS    (8)
2807 #define STARTF_USEFILLATTRIBUTE (16)
2808 #define STARTF_RUNFULLSCREEN    (32) 
2809 #define STARTF_FORCEONFEEDBACK  (64)
2810 #define STARTF_FORCEOFFFEEDBACK (128)
2811 #define STARTF_USESTDHANDLES    (256)
2812 #define STARTF_USEHOTKEY        (512)
2813
2814 /* OSVERSIONINFO structure */
2815 #define VER_PLATFORM_WIN32s     (0)
2816 #define VER_PLATFORM_WIN32_WINDOWS (1)
2817 #define VER_PLATFORM_WIN32_NT   (2)
2818
2819 /* PROPSHEETPAGE structure */
2820 #define MAXPROPPAGES    (100)
2821 #define PSP_DEFAULT     (0)
2822 #define PSP_DLGINDIRECT (1)
2823 #define PSP_HASHELP     (32)
2824 #define PSP_USECALLBACK (128)
2825 #define PSP_USEHICON    (2)
2826 #define PSP_USEICONID   (4)
2827 #define PSP_USEREFPARENT        (64)
2828 #define PSP_USETITLE    (8)
2829 #define PSP_RTLREADING  (16)
2830
2831 /* PROPSHEETHEADER structure */
2832 #define PSH_DEFAULT     (0)
2833 #define PSH_HASHELP     (512)
2834 #define PSH_MODELESS    (1024)
2835 #define PSH_NOAPPLYNOW  (128)
2836 #define PSH_PROPSHEETPAGE       (8)
2837 #define PSH_PROPTITLE   (1)
2838 #define PSH_USECALLBACK (256)
2839 #define PSH_USEHICON    (2)
2840 #define PSH_USEICONID   (4)
2841 #define PSH_USEPSTARTPAGE       (64)
2842 #define PSH_WIZARD      (32)
2843 #define PSH_RTLREADING  (2048)
2844 #define PSCB_INITIALIZED        (1)
2845 #define PSCB_PRECREATE  (2)
2846
2847 /* PSN_APPLY message */
2848 #define PSNRET_NOERROR  (0)
2849 #define PSNRET_INVALID_NOCHANGEPAGE     (2)
2850
2851 /* Property Sheet */
2852 #define PSBTN_APPLYNOW  (4)
2853 #define PSBTN_BACK      (0)
2854 #define PSBTN_CANCEL    (5)
2855 #define PSBTN_FINISH    (2)
2856 #define PSBTN_HELP      (6)
2857 #define PSBTN_NEXT      (1)
2858 #define PSBTN_OK        (3)
2859 #define PSWIZB_BACK     (1)
2860 #define PSWIZB_NEXT     (2)
2861 #define PSWIZB_FINISH   (4)
2862 #define PSWIZB_DISABLEDFINISH   (8)
2863 #define ID_PSREBOOTSYSTEM       (3)
2864 #define ID_PSRESTARTWINDOWS     (2)
2865 #define WIZ_BODYCX      (184)
2866 #define WIZ_BODYX       (92)
2867 #define WIZ_CXBMP       (80)
2868 #define WIZ_CXDLG       (276)
2869 #define WIZ_CYDLG       (140)
2870
2871 /* VX_FIXEDFILEINFO structure */
2872 #define VS_FILE_INFO    (MAKEINTRESOURCE(16))
2873 #define VS_VERSION_INFO (1)
2874 #define VS_FF_DEBUG     (0x1L)
2875 #define VS_FF_INFOINFERRED      (0x10L)
2876 #define VS_FF_PATCHED   (0x4L)
2877 #define VS_FF_PRERELEASE        (0x2L)
2878 #define VS_FF_PRIVATEBUILD      (0x8L)
2879 #define VS_FF_SPECIALBUILD      (0x20L)
2880 #define VS_FFI_SIGNATURE        (0xfeef04bd)
2881 #define VS_FFI_STRUCVERSION     (0x00010000)
2882 #define VOS_UNKNOWN     (0L)
2883 #define VOS_DOS (0x10000L)
2884 #define VOS_OS216       (0x20000L)
2885 #define VOS_OS232       (0x30000L)
2886 #define VOS_NT  (0x40000L)
2887 #define VOS_DOS_WINDOWS16       (0x10001L)
2888 #define VOS_DOS_WINDOWS32       (0x10004L)
2889 #define VOS_OS216_PM16  (0x20002L)
2890 #define VOS_OS232_PM32  (0x30003L)
2891 #define VOS_NT_WINDOWS32        (0x40004L)
2892 #define VFT_UNKNOWN     (0L)
2893 #define VFT_APP (0x1L)
2894 #define VFT_DLL (0x2L)
2895 #define VFT_DRV (0x3L)
2896 #define VFT_FONT        (0x4L)
2897 #define VFT_VXD (0x5L)
2898 #define VFT_STATIC_LIB  (0x7L)
2899 #define VFT2_UNKNOWN    (0L)
2900 #define VFT2_DRV_PRINTER        (0x1L)
2901 #define VFT2_DRV_KEYBOARD       (0x2L)
2902 #define VFT2_DRV_LANGUAGE       (0x3L)
2903 #define VFT2_DRV_DISPLAY        (0x4L)
2904 #define VFT2_DRV_MOUSE  (0x5L)
2905 #define VFT2_DRV_NETWORK        (0x6L)
2906 #define VFT2_DRV_SYSTEM (0x7L)
2907 #define VFT2_DRV_INSTALLABLE    (0x8L)
2908 #define VFT2_DRV_SOUND  (0x9L)
2909 #define VFT2_FONT_RASTER        (0x1L)
2910 #define VFT2_FONT_VECTOR        (0x2L)
2911 #define VFT2_FONT_TRUETYPE      (0x3L)
2912
2913 /* PANOSE structure */
2914 #define PAN_ANY (0)
2915 #define PAN_NO_FIT      (1)
2916 #define PAN_FAMILY_TEXT_DISPLAY (2)
2917 #define PAN_FAMILY_SCRIPT       (3)
2918 #define PAN_FAMILY_DECORATIVE   (4)
2919 #define PAN_FAMILY_PICTORIAL    (5)
2920 #define PAN_SERIF_COVE  (2)
2921 #define PAN_SERIF_OBTUSE_COVE   (3)
2922 #define PAN_SERIF_SQUARE_COVE   (4)
2923 #define PAN_SERIF_OBTUSE_SQUARE_COVE    (5)
2924 #define PAN_SERIF_SQUARE        (6)
2925 #define PAN_SERIF_THIN  (7)
2926 #define PAN_SERIF_BONE  (8)
2927 #define PAN_SERIF_EXAGGERATED   (9)
2928 #define PAN_SERIF_TRIANGLE      (10)
2929 #define PAN_SERIF_NORMAL_SANS   (11)
2930 #define PAN_SERIF_OBTUSE_SANS   (12)
2931 #define PAN_SERIF_PERP_SANS     (13)
2932 #define PAN_SERIF_FLARED        (14)
2933 #define PAN_SERIF_ROUNDED       (15)
2934 #define PAN_WEIGHT_VERY_LIGHT   (2)
2935 #define PAN_WEIGHT_LIGHT        (3)
2936 #define PAN_WEIGHT_THIN (4)
2937 #define PAN_WEIGHT_BOOK (5)
2938 #define PAN_WEIGHT_MEDIUM       (6)
2939 #define PAN_WEIGHT_DEMI (7)
2940 #define PAN_WEIGHT_BOLD (8)
2941 #define PAN_WEIGHT_HEAVY        (9)
2942 #define PAN_WEIGHT_BLACK        (10)
2943 #define PAN_WEIGHT_NORD (11)
2944 #define PAN_PROP_OLD_STYLE      (2)
2945 #define PAN_PROP_MODERN (3)
2946 #define PAN_PROP_EVEN_WIDTH     (4)
2947 #define PAN_PROP_EXPANDED       (5)
2948 #define PAN_PROP_CONDENSED      (6)
2949 #define PAN_PROP_VERY_EXPANDED  (7)
2950 #define PAN_PROP_VERY_CONDENSED (8)
2951 #define PAN_PROP_MONOSPACED     (9)
2952 #define PAN_CONTRAST_NONE       (2)
2953 #define PAN_CONTRAST_VERY_LOW   (3)
2954 #define PAN_CONTRAST_LOW        (4)
2955 #define PAN_CONTRAST_MEDIUM_LOW (5)
2956 #define PAN_CONTRAST_MEDIUM     (6)
2957 #define PAN_CONTRAST_MEDIUM_HIGH        (7)
2958 #define PAN_CONTRAST_HIGH       (8)
2959 #define PAN_CONTRAST_VERY_HIGH  (9)
2960 #define PAN_STROKE_GRADUAL_DIAG (2)
2961 #define PAN_STROKE_GRADUAL_TRAN (3)
2962 #define PAN_STROKE_GRADUAL_VERT (4)
2963 #define PAN_STROKE_GRADUAL_HORZ (5)
2964 #define PAN_STROKE_RAPID_VERT   (6)
2965 #define PAN_STROKE_RAPID_HORZ   (7)
2966 #define PAN_STROKE_INSTANT_VERT (8)
2967 #define PAN_STRAIGHT_ARMS_HORZ  (2)
2968 #define PAN_STRAIGHT_ARMS_WEDGE (3)
2969 #define PAN_STRAIGHT_ARMS_VERT  (4)
2970 #define PAN_STRAIGHT_ARMS_SINGLE_SERIF  (5)
2971 #define PAN_STRAIGHT_ARMS_DOUBLE_SERIF  (6)
2972 #define PAN_BENT_ARMS_HORZ      (7)
2973 #define PAN_BENT_ARMS_VERT      (9)
2974 #define PAN_BENT_ARMS_WEDGE     (8)
2975 #define PAN_BENT_ARMS_SINGLE_SERIF      (10)
2976 #define PAN_BENT_ARMS_DOUBLE_SERIF      (11)
2977 #define PAN_LETT_NORMAL_CONTACT (2)
2978 #define PAN_LETT_NORMAL_WEIGHTED        (3)
2979 #define PAN_LETT_NORMAL_BOXED   (4)
2980 #define PAN_LETT_NORMAL_FLATTENED       (5)
2981 #define PAN_LETT_NORMAL_ROUNDED (6)
2982 #define PAN_LETT_NORMAL_OFF_CENTER      (7)
2983 #define PAN_LETT_NORMAL_SQUARE  (8)
2984 #define PAN_LETT_OBLIQUE_CONTACT        (9)
2985 #define PAN_LETT_OBLIQUE_WEIGHTED       (10)
2986 #define PAN_LETT_OBLIQUE_BOXED  (11)
2987 #define PAN_LETT_OBLIQUE_FLATTENED      (12)
2988 #define PAN_LETT_OBLIQUE_ROUNDED        (13)
2989 #define PAN_LETT_OBLIQUE_OFF_CENTER     (14)
2990 #define PAN_LETT_OBLIQUE_SQUARE (15)
2991 #define PAN_MIDLINE_STANDARD_TRIMMED    (2)
2992 #define PAN_MIDLINE_STANDARD_POINTED    (3)
2993 #define PAN_MIDLINE_STANDARD_SERIFED    (4)
2994 #define PAN_MIDLINE_HIGH_TRIMMED        (5)
2995 #define PAN_MIDLINE_HIGH_POINTED        (6)
2996 #define PAN_MIDLINE_HIGH_SERIFED        (7)
2997 #define PAN_MIDLINE_CONSTANT_TRIMMED    (8)
2998 #define PAN_MIDLINE_CONSTANT_POINTED    (9)
2999 #define PAN_MIDLINE_CONSTANT_SERIFED    (10)
3000 #define PAN_MIDLINE_LOW_TRIMMED (11)
3001 #define PAN_MIDLINE_LOW_POINTED (12)
3002 #define PAN_MIDLINE_LOW_SERIFED (13)
3003 #define PAN_XHEIGHT_CONSTANT_SMALL      (2)
3004 #define PAN_XHEIGHT_CONSTANT_STD        (3)
3005 #define PAN_XHEIGHT_CONSTANT_LARGE      (4)
3006 #define PAN_XHEIGHT_DUCKING_SMALL       (5)
3007 #define PAN_XHEIGHT_DUCKING_STD (6)
3008 #define PAN_XHEIGHT_DUCKING_LARGE       (7)
3009
3010 /* PALETTENTRY structure */
3011 #define PC_EXPLICIT     (2)
3012 #define PC_NOCOLLAPSE   (4)
3013 #define PC_RESERVED     (1)
3014
3015 /* LOGBRUSH structure */
3016 #define BS_DIBPATTERN   (5)
3017 #define BS_DIBPATTERN8X8        (8)
3018 #define BS_DIBPATTERNPT (6)
3019 #define BS_HATCHED      (2)
3020 #define BS_HOLLOW       (1)
3021 #define BS_NULL (1)
3022 #define BS_PATTERN      (3)
3023 #define BS_PATTERN8X8   (7)
3024 #define BS_SOLID        (0)
3025
3026 /* DEVMODE structure */
3027 #define DM_ORIENTATION  (0x1L)
3028 #define DM_PAPERSIZE    (0x2L)
3029 #define DM_PAPERLENGTH  (0x4L)
3030 #define DM_PAPERWIDTH   (0x8L)
3031 #define DM_SCALE        (0x10L)
3032 #define DM_COPIES       (0x100L)
3033 #define DM_DEFAULTSOURCE        (0x200L)
3034 #define DM_PRINTQUALITY (0x400L)
3035 #define DM_COLOR        (0x800L)
3036 #define DM_DUPLEX       (0x1000L)
3037 #define DM_YRESOLUTION  (0x2000L)
3038 #define DM_TTOPTION     (0x4000L)
3039 #define DM_COLLATE      (0x8000L)
3040 #define DM_FORMNAME     (0x10000L)
3041 #define DM_LOGPIXELS    (0x20000L)
3042 #define DM_BITSPERPEL   (0x40000L)
3043 #define DM_PELSWIDTH    (0x80000L)
3044 #define DM_PELSHEIGHT   (0x100000L)
3045 #define DM_DISPLAYFLAGS (0x200000L)
3046 #define DM_DISPLAYFREQUENCY     (0x400000L)
3047 #define DM_ICMMETHOD    (0x800000L)
3048 #define DM_ICMINTENT    (0x1000000L)
3049 #define DM_MEDIATYPE    (0x2000000L)
3050 #define DM_DITHERTYPE   (0x4000000L)
3051 #define DMORIENT_LANDSCAPE      (2)
3052 #define DMORIENT_PORTRAIT       (1)
3053 #define DMPAPER_LETTER  (1)
3054 #define DMPAPER_LEGAL   (5)
3055 #define DMPAPER_A4      (9)
3056 #define DMPAPER_CSHEET  (24)
3057 #define DMPAPER_DSHEET  (25)
3058 #define DMPAPER_ESHEET  (26)
3059 #define DMPAPER_LETTERSMALL     (2)
3060 #define DMPAPER_TABLOID (3)
3061 #define DMPAPER_LEDGER  (4)
3062 #define DMPAPER_STATEMENT       (6)
3063 #define DMPAPER_EXECUTIVE       (7)
3064 #define DMPAPER_A3      (8)
3065 #define DMPAPER_A4SMALL (10)
3066 #define DMPAPER_A5      (11)
3067 #define DMPAPER_B4      (12)
3068 #define DMPAPER_B5      (13)
3069 #define DMPAPER_FOLIO   (14)
3070 #define DMPAPER_QUARTO  (15)
3071 #define DMPAPER_10X14   (16)
3072 #define DMPAPER_11X17   (17)
3073 #define DMPAPER_NOTE    (18)
3074 #define DMPAPER_ENV_9   (19)
3075 #define DMPAPER_ENV_10  (20)
3076 #define DMPAPER_ENV_11  (21)
3077 #define DMPAPER_ENV_12  (22)
3078 #define DMPAPER_ENV_14  (23)
3079 #define DMPAPER_ENV_DL  (27)
3080 #define DMPAPER_ENV_C5  (28)
3081 #define DMPAPER_ENV_C3  (29)
3082 #define DMPAPER_ENV_C4  (30)
3083 #define DMPAPER_ENV_C6  (31)
3084 #define DMPAPER_ENV_C65 (32)
3085 #define DMPAPER_ENV_B4  (33)
3086 #define DMPAPER_ENV_B5  (34)
3087 #define DMPAPER_ENV_B6  (35)
3088 #define DMPAPER_ENV_ITALY       (36)
3089 #define DMPAPER_ENV_MONARCH     (37)
3090 #define DMPAPER_ENV_PERSONAL    (38)
3091 #define DMPAPER_FANFOLD_US      (39)
3092 #define DMPAPER_FANFOLD_STD_GERMAN      (40)
3093 #define DMPAPER_FANFOLD_LGL_GERMAN      (41)
3094 #define DMRES_HIGH      (-4)
3095 #define DMRES_MEDIUM    (-3)
3096 #define DMRES_LOW       (-2)
3097 #define DMRES_DRAFT     (-1)
3098 #define DMCOLOR_COLOR   (2)
3099 #define DMCOLOR_MONOCHROME      (1)
3100 #define DMDUP_SIMPLEX   (1)
3101 #define DMDUP_HORIZONTAL        (3)
3102 #define DMDUP_VERTICAL  (2)
3103 #define DMTT_BITMAP     (1)
3104 #define DMTT_DOWNLOAD   (2)
3105 #define DMTT_SUBDEV     (3)
3106 #define DMCOLLATE_TRUE  (1)
3107 #define DMCOLLATE_FALSE (0)
3108 #define DM_GRAYSCALE    (1)
3109 #define DM_INTERLACED   (2)
3110 #define DMICMMETHOD_NONE        (1)
3111 #define DMICMMETHOD_SYSTEM      (2)
3112 #define DMICMMETHOD_DRIVER      (3)
3113 #define DMICMMETHOD_DEVICE      (4)
3114 #define DMICMMETHOD_USER        (256)
3115 #define DMICM_SATURATE  (1)
3116 #define DMICM_CONTRAST  (2)
3117 #define DMICM_COLORMETRIC       (3)
3118 #define DMICM_USER      (256)
3119 #define DMMEDIA_STANDARD        (1)
3120 #define DMMEDIA_GLOSSY  (3)
3121 #define DMMEDIA_TRANSPARENCY    (2)
3122 #define DMMEDIA_USER    (256)
3123 #define DMDITHER_NONE   (1)
3124 #define DMDITHER_COARSE (2)
3125 #define DMDITHER_FINE   (3)
3126 #define DMDITHER_LINEART        (4)
3127 #define DMDITHER_GRAYSCALE      (10)
3128 #define DMDITHER_USER   (256)
3129
3130 /* RGNDATAHEADER structure */
3131 #define RDH_RECTANGLES  (1)
3132
3133 /* TTPOLYGONHEADER structure */
3134 #define TT_POLYGON_TYPE (24)
3135
3136 /* TTPOLYCURVE structure */
3137 #define TT_PRIM_LINE    (1)
3138 #define TT_PRIM_QSPLINE (2)
3139
3140 /* GCP_RESULTS structure */
3141 #define GCPCLASS_ARABIC (2)
3142 #define GCPCLASS_HEBREW (2)
3143 #define GCPCLASS_LATIN  (1)
3144 #define GCPCLASS_LATINNUMBER    (5)
3145 #define GCPCLASS_LOCALNUMBER    (4)
3146 #define GCPCLASS_LATINNUMERICSEPARATOR  (7)
3147 #define GCPCLASS_LATINNUMERICTERMINATOR (6)
3148 #define GCPCLASS_NEUTRAL        (3)
3149 #define GCPCLASS_NUMERICSEPARATOR       (8)
3150 #define GCPCLASS_PREBOUNDLTR    (128)
3151 #define GCPCLASS_PREBOUNDRTL    (64)
3152 #define GCPCLASS_POSTBOUNDLTR   (32)
3153 #define GCPCLASS_POSTBOUNDRTL   (16)
3154 #define GCPGLYPH_LINKBEFORE     (32768)
3155 #define GCPGLYPH_LINKAFTER      (16384)
3156
3157 /* RASTERIZER_STATUS structure */
3158 #define TT_AVAILABLE    (1)
3159 #define TT_ENABLED      (2)
3160
3161 /* COLORADJUSTMENT structure */
3162 #define CA_NEGATIVE     (1)
3163 #define CA_LOG_FILTER   (2)
3164 #define ILLUMINANT_DEVICE_DEFAULT       (0)
3165 #define ILLUMINANT_A    (1)
3166 #define ILLUMINANT_B    (2)
3167 #define ILLUMINANT_C    (3)
3168 #define ILLUMINANT_D50  (4)
3169 #define ILLUMINANT_D55  (5)
3170 #define ILLUMINANT_D65  (6)
3171 #define ILLUMINANT_D75  (7)
3172 #define ILLUMINANT_F2   (8)
3173 #define ILLUMINANT_TUNGSTEN     (1)
3174 #define ILLUMINANT_DAYLIGHT     (3)
3175 #define ILLUMINANT_FLUORESCENT  (8)
3176 #define ILLUMINANT_NTSC (3)
3177
3178 /* DOCINFO structure */
3179 #define DI_APPBANDING   (1)
3180
3181 /* EMRMETAHEADER structure */
3182 #define EMR_HEADER      (1)
3183 #define ENHMETA_SIGNATURE       (1179469088)
3184
3185 /* RTF event masks */
3186 #define ENM_CHANGE      (1)
3187 #define ENM_CORRECTTEXT (4194304)
3188 #define ENM_DROPFILES   (1048576)
3189 #define ENM_KEYEVENTS   (65536)
3190 #define ENM_MOUSEEVENTS (131072)
3191 #define ENM_PROTECTED   (2097152)
3192 #define ENM_REQUESTRESIZE       (262144)
3193 #define ENM_SCROLL      (4)
3194 #define ENM_SELCHANGE   (524288)
3195 #define ENM_UPDATE      (2)
3196 #define ENM_NONE        (0)
3197
3198 /* RTF styles */
3199 #define ES_DISABLENOSCROLL      (8192)
3200 #define ES_EX_NOCALLOLEINIT     (16777216)
3201 #define ES_NOIME        (524288)
3202 #define ES_SAVESEL      (32768)
3203 #define ES_SELFIME      (262144)
3204 #define ES_SUNKEN       (16384)
3205 #define ES_VERTICAL     (4194304)
3206 #define ES_SELECTIONBAR (16777216)
3207
3208 /* EM_SETOPTIONS message */
3209 #define ECOOP_SET       (1)
3210 #define ECOOP_OR        (2)
3211 #define ECOOP_AND       (3)
3212 #define ECOOP_XOR       (4)
3213 #define ECO_AUTOWORDSELECTION   (1)
3214 #define ECO_AUTOVSCROLL (64)
3215 #define ECO_AUTOHSCROLL (128)
3216 #define ECO_NOHIDESEL   (256)
3217 #define ECO_READONLY    (2048)
3218 #define ECO_WANTRETURN  (4096)
3219 #define ECO_SAVESEL     (32768)
3220 #define ECO_SELECTIONBAR        (16777216)
3221 #define ECO_VERTICAL    (4194304)
3222
3223 /* EM_SETCHARFORMAT message */
3224 #define SCF_WORD        (2)
3225 #define SCF_SELECTION   (1)
3226
3227 /* EM_STREAMOUT message */
3228 #define SF_TEXT (1)
3229 #define SF_RTF  (2)
3230 #define SF_RTFNOOBJS    (3)
3231 #define SF_TEXTIZED     (4)
3232 #define SFF_SELECTION   (32768)
3233 #define SFF_PLAINRTF    (16384)
3234
3235 /* EM_FINDWORDBREAK message */
3236 #define WB_CLASSIFY     (3)
3237 #define WB_ISDELIMITER  (2)
3238 #define WB_LEFT (0)
3239 #define WB_LEFTBREAK    (6)
3240 #define WB_PREVBREAK    (6)
3241 #define WB_MOVEWORDLEFT (4)
3242 #define WB_MOVEWORDPREV (4)
3243 #define WB_MOVEWORDRIGHT        (5)
3244 #define WB_MOVEWORDNEXT (5)
3245 #define WB_RIGHT        (1)
3246 #define WB_RIGHTBREAK   (7)
3247 #define WB_NEXTBREAK    (7)
3248
3249 /* EM_GETPUNCTUATION message */
3250 #define PC_LEADING      (2)
3251 #define PC_FOLLOWING    (1)
3252 #define PC_DELIMITER    (4)
3253 #define PC_OVERFLOW     (3)
3254
3255 /* EM_SETWORDWRAPMODE message */
3256 #define WBF_WORDWRAP    (16)
3257 #define WBF_WORDBREAK   (32)
3258 #define WBF_OVERFLOW    (64)
3259 #define WBF_LEVEL1      (128)
3260 #define WBF_LEVEL2      (256)
3261 #define WBF_CUSTOM      (512)
3262 #define WBF_BREAKAFTER  (64)
3263 #define WBF_BREAKLINE   (32)
3264 #define WBF_ISWHITE     (16)
3265
3266 /* CHARFORMAT structure */
3267 #define CFM_BOLD        (1)
3268 #define CFM_COLOR       (1073741824)
3269 #define CFM_FACE        (536870912)
3270 #define CFM_ITALIC      (2)
3271 #define CFM_OFFSET      (268435456)
3272 #define CFM_PROTECTED   (16)
3273 #define CFM_SIZE        (0x80000000)
3274 #define CFM_STRIKEOUT   (8)
3275 #define CFM_UNDERLINE   (4)
3276 #define CFE_AUTOCOLOR   (1073741824)
3277 #define CFE_BOLD        (1)
3278 #define CFE_ITALIC      (2)
3279 #define CFE_STRIKEOUT   (8)
3280 #define CFE_UNDERLINE   (4)
3281 #define CFE_PROTECTED   (16)
3282
3283 /* PARAFORMAT structure */
3284 #define PFM_ALIGNMENT   (8)
3285 #define PFM_NUMBERING   (32)
3286 #define PFM_OFFSET      (4)
3287 #define PFM_OFFSETINDENT        (0x80000000)
3288 #define PFM_RIGHTINDENT (2)
3289 #define PFM_STARTINDENT (1)
3290 #define PFM_TABSTOPS    (16)
3291 #define PFN_BULLET      (1)
3292 #define PFA_LEFT        (1)
3293 #define PFA_RIGHT       (2)
3294 #define PFA_CENTER      (3)
3295
3296 /* SELCHANGE structure */
3297 #define SEL_EMPTY       (0)
3298 #define SEL_TEXT        (1)
3299 #define SEL_OBJECT      (2)
3300 #define SEL_MULTICHAR   (4)
3301 #define SEL_MULTIOBJECT (8)
3302
3303 /* RTF clipboard formats */
3304 #define CF_RTF  "Rich Text Format"
3305 #define CF_RETEXTOBJ    "RichEdit Text and Objects"
3306
3307 /* DRAWITEMSTRUCT structure */
3308 #define ODT_BUTTON      (4)
3309 #define ODT_COMBOBOX    (3)
3310 #define ODT_LISTBOX     (2)
3311 #define ODT_LISTVIEW    (102)
3312 #define ODT_MENU        (1)
3313 #define ODT_STATIC      (5)
3314 #define ODT_TAB         (101)
3315 #define ODT_HEADER      (100)
3316 #define ODA_DRAWENTIRE  (1)
3317 #define ODA_FOCUS       (4)
3318 #define ODA_SELECT      (2)
3319 #define ODS_CHECKED     (8)
3320 #define ODS_COMBOBOXEDIT        (4096)
3321 #define ODS_DEFAULT     (32)
3322 #define ODS_DISABLED    (4)
3323 #define ODS_FOCUS       (16)
3324 #define ODS_GRAYED      (2)
3325 #define ODS_SELECTED    (1)
3326
3327 /* Common control window classes */
3328 #define ANIMATE_CLASSW  L"SysAnimate32"
3329 #define HOTKEY_CLASSW   L"msctls_hotkey32"
3330 #define PROGRESS_CLASSW L"msctls_progress32"
3331 #define STATUSCLASSNAMEW        L"msctls_statusbar32"
3332 #define TOOLBARCLASSNAMEW       L"ToolbarWindow32"
3333 #define TOOLTIPS_CLASSW L"tooltips_class32"
3334 #define TRACKBAR_CLASSW L"msctls_trackbar32"
3335 #define UPDOWN_CLASSW   L"msctls_updown32"
3336 #define WC_HEADERW      L"SysHeader32"
3337 #define WC_LISTVIEWW    L"SysListView32"
3338 #define WC_TABCONTROLW  L"SysTabControl32"
3339 #define WC_TREEVIEWW    L"SysTreeView32"
3340
3341 /* Common control styles */
3342 #define CCS_ADJUSTABLE  (0x20L)
3343 #define CCS_BOTTOM      (0x3L)
3344 #define CCS_NODIVIDER   (0x40L)
3345 #define CCS_NOMOVEY     (0x2L)
3346 #define CCS_NOPARENTALIGN       (0x8L)
3347 #define CCS_NORESIZE    (0x4L)
3348 #define CCS_TOP (0x1L)
3349 #define ANIMATE_CLASSA  "SysAnimate32"
3350 #define HOTKEY_CLASSA   "msctls_hotkey32"
3351 #define PROGRESS_CLASSA "msctls_progress32"
3352 #define STATUSCLASSNAMEA        "msctls_statusbar32"
3353 #define TOOLBARCLASSNAMEA       "ToolbarWindow32"
3354 #define TOOLTIPS_CLASSA "tooltips_class32"
3355 #define TRACKBAR_CLASSA "msctls_trackbar32"
3356 #define UPDOWN_CLASSA   "msctls_updown32"
3357 #define WC_HEADERA      "SysHeader32"
3358 #define WC_LISTVIEWA    "SysListView32"
3359 #define WC_TABCONTROLA  "SysTabControl32"
3360 #define WC_TREEVIEWA    "SysTreeView32"
3361 #ifdef UNICODE
3362 #define ANIMATE_CLASS ANIMATE_CLASSW
3363 #define HOTKEY_CLASS HOTKEY_CLASSW
3364 #define PROGRESS_CLASS PROGRESS_CLASSW
3365 #define STATUSCLASSNAME STATUSCLASSNAMEW
3366 #define TOOLBARCLASSNAME TOOLBARCLASSNAMEW
3367 #define TOOLTIPS_CLASS TOOLTIPS_CLASSW
3368 #define TRACKBAR_CLASS TRACKBAR_CLASSW
3369 #define UPDOWN_CLASS UPDOWN_CLASSW
3370 #define WC_HEADER WC_HEADERW
3371 #define WC_LISTVIEW WC_LISTVIEWW
3372 #define WC_TABCONTROL WC_TABCONTROLW
3373 #define WC_TREEVIEW WC_TREEVIEWW
3374 #else
3375 #define ANIMATE_CLASS ANIMATE_CLASSA
3376 #define HOTKEY_CLASS HOTKEY_CLASSA
3377 #define PROGRESS_CLASS PROGRESS_CLASSA
3378 #define STATUSCLASSNAME STATUSCLASSNAMEA
3379 #define TOOLBARCLASSNAME TOOLBARCLASSNAMEA
3380 #define TOOLTIPS_CLASS TOOLTIPS_CLASSA
3381 #define TRACKBAR_CLASS TRACKBAR_CLASSA
3382 #define UPDOWN_CLASS UPDOWN_CLASSA
3383 #define WC_HEADER WC_HEADERA
3384 #define WC_LISTVIEW WC_LISTVIEWA
3385 #define WC_TABCONTROL WC_TABCONTROLA
3386 #define WC_TREEVIEW WC_TREEVIEWA
3387 #endif /* UNICODE */
3388
3389 /* Header control styles */
3390 #define HDS_BUTTONS     (2)
3391 #define HDS_HIDDEN      (8)
3392 #define HDS_HORZ        (0)
3393
3394 /* HD_ITEM structure */
3395 #define HDI_BITMAP      (16)
3396 #define HDI_FORMAT      (4)
3397 #define HDI_HEIGHT      (1)
3398 #define HDI_LPARAM      (8)
3399 #define HDI_TEXT        (2)
3400 #define HDI_WIDTH       (1)
3401 #define HDF_CENTER      (2)
3402 #define HDF_LEFT        (0)
3403 #define HDF_RIGHT       (1)
3404 #define HDF_RTLREADING  (4)
3405 #define HDF_BITMAP      (8192)
3406 #define HDF_OWNERDRAW   (32768)
3407 #define HDF_STRING      (16384)
3408 #define HDF_JUSTIFYMASK (3)
3409
3410 /* HD_HITTESTINFO structure */
3411 #define HHT_NOWHERE     (1)
3412 #define HHT_ONDIVIDER   (4)
3413 #define HHT_ONDIVOPEN   (8)
3414 #define HHT_ONHEADER    (2)
3415 #define HHT_TOLEFT      (2048)
3416 #define HHT_TORIGHT     (1024)
3417
3418 /* TBADDBITMAP structure */
3419 #define HINST_COMMCTRL  ((HINSTANCE)-1)
3420 #define IDB_STD_LARGE_COLOR     (1)
3421 #define IDB_STD_SMALL_COLOR     (0)
3422 #define IDB_VIEW_LARGE_COLOR    (5)
3423 #define IDB_VIEW_SMALL_COLOR    (4)
3424 #define STD_COPY        (1)
3425 #define STD_CUT (0)
3426 #define STD_DELETE      (5)
3427 #define STD_FILENEW     (6)
3428 #define STD_FILEOPEN    (7)
3429 #define STD_FILESAVE    (8)
3430 #define STD_FIND        (12)
3431 #define STD_HELP        (11)
3432 #define STD_PASTE       (2)
3433 #define STD_PRINT       (14)
3434 #define STD_PRINTPRE    (9)
3435 #define STD_PROPERTIES  (10)
3436 #define STD_REDOW       (4)
3437 #define STD_REPLACE     (13)
3438 #define STD_UNDO        (3)
3439 #define VIEW_LARGEICONS (0)
3440 #define VIEW_SMALLICONS (1)
3441 #define VIEW_LIST       (2)
3442 #define VIEW_DETAILS    (3)
3443 #define VIEW_SORTNAME   (4)
3444 #define VIEW_SORTSIZE   (5)
3445 #define VIEW_SORTDATE   (6)
3446 #define VIEW_SORTTYPE   (7)
3447
3448 /* Toolbar styles */
3449 #define TBSTYLE_ALTDRAG (1024)
3450 #define TBSTYLE_TOOLTIPS        (256)
3451 #define TBSTYLE_WRAPABLE        (512)
3452 #define TBSTYLE_BUTTON  (0)
3453 #define TBSTYLE_CHECK   (2)
3454 #define TBSTYLE_CHECKGROUP      (6)
3455 #define TBSTYLE_GROUP   (4)
3456 #define TBSTYLE_SEP     (1)
3457
3458 /* Toolbar states */
3459 #define TBSTATE_CHECKED (1)
3460 #define TBSTATE_ENABLED (4)
3461 #define TBSTATE_HIDDEN  (8)
3462 #define TBSTATE_INDETERMINATE   (16)
3463 #define TBSTATE_PRESSED (2)
3464 #define TBSTATE_WRAP    (32)
3465
3466 /* Tooltip styles */
3467 #define TTS_ALWAYSTIP   (1)
3468 #define TTS_NOPREFIX    (2)
3469
3470 /* TOOLINFO structure */
3471 #define TTF_IDISHWND    (1)
3472 #define TTF_CENTERTIP   (2)
3473 #define TTF_RTLREADING  (4)
3474 #define TTF_SUBCLASS    (16)
3475
3476 /* TTM_SETDELAYTIME message */
3477 #define TTDT_AUTOMATIC  (0)
3478 #define TTDT_AUTOPOP    (2)
3479 #define TTDT_INITIAL    (3)
3480 #define TTDT_RESHOW     (1)
3481
3482 /* Status window */
3483 #define SBARS_SIZEGRIP  (256)
3484 #define SBARS_SIZEGRIP  (256)
3485
3486 /* DL_DRAGGING message */
3487 #define DL_MOVECURSOR   (3)
3488 #define DL_COPYCURSOR   (2)
3489 #define DL_STOPCURSOR   (1)
3490
3491 /* Up-down control styles */
3492 #define UDS_ALIGNLEFT   (8)
3493 #define UDS_ALIGNRIGHT  (4)
3494 #define UDS_ARROWKEYS   (32)
3495 #define UDS_AUTOBUDDY   (16)
3496 #define UDS_HORZ        (64)
3497 #define UDS_NOTHOUSANDS (128)
3498 #define UDS_SETBUDDYINT (2)
3499 #define UDS_WRAP        (1)
3500
3501 /* UDM_SETRANGE message */
3502 #define UD_MAXVAL       (32767)
3503 #define UD_MINVAL       (-32767)
3504
3505 /* HKM_GETHOTKEY message */
3506 #define HOTKEYF_ALT     (4)
3507 #define HOTKEYF_CONTROL (2)
3508 #define HOTKEYF_EXT     (8)
3509 #define HOTKEYF_SHIFT   (1)
3510
3511 /* HKM_SETRULES message */
3512 #define HKCOMB_A        (8)
3513 #define HKCOMB_C        (4)
3514 #define HKCOMB_CA       (64)
3515 #define HKCOMB_NONE     (1)
3516 #define HKCOMB_S        (2)
3517 #define HKCOMB_SA       (32)
3518 #define HKCOMB_SC       (16)
3519 #define HKCOMB_SCA      (128)
3520
3521 /* Trackbar styles */
3522 #define TBS_HORZ        (0)
3523 #define TBS_VERT        (2)
3524 #define TBS_AUTOTICKS   (1)
3525 #define TBS_NOTICKS     (16)
3526 #define TBS_TOP (4)
3527 #define TBS_BOTTOM      (0)
3528 #define TBS_LEFT        (4)
3529 #define TBS_RIGHT       (0)
3530 #define TBS_BOTH        (8)
3531 #define TBS_ENABLESELRANGE      (32)
3532 #define TBS_FIXEDLENGTH (64)
3533 #define TBS_NOTHUMB     (128)
3534 #define TB_BOTTOM       (7)
3535 #define TB_ENDTRACK     (8)
3536 #define TB_LINEDOWN     (1)
3537 #define TB_LINEUP       (0)
3538 #define TB_PAGEDOWN     (3)
3539 #define TB_PAGEUP       (2)
3540 #define TB_THUMBPOSITION        (4)
3541 #define TB_THUMBTRACK   (5)
3542 #define TB_TOP  (6)
3543
3544 /* List view styles */
3545 #define LVS_ALIGNLEFT   (2048)
3546 #define LVS_ALIGNTOP    (0)
3547 #define LVS_AUTOARRANGE (256)
3548 #define LVS_EDITLABELS  (512)
3549 #define LVS_ICON        (0)
3550 #define LVS_LIST        (3)
3551 #define LVS_NOCOLUMNHEADER      (16384)
3552 #define LVS_NOLABELWRAP (128)
3553 #define LVS_NOSCROLL    (8192)
3554 #define LVS_NOSORTHEADER        (32768)
3555 #define LVS_OWNERDRAWFIXED      (1024)
3556 #define LVS_REPORT      (1)
3557 #define LVS_SHAREIMAGELISTS     (64)
3558 #define LVS_SHOWSELALWAYS       (8)
3559 #define LVS_SINGLESEL   (4)
3560 #define LVS_SMALLICON   (2)
3561 #define LVS_SORTASCENDING       (16)
3562 #define LVS_SORTDESCENDING      (32)
3563 #define LVS_OWNERDATA           0x1000
3564 #define LVS_TYPESTYLEMASK       (64512)
3565 #define LVSIL_NORMAL    (0)
3566 #define LVSIL_SMALL     (1)
3567 #define LVSIL_STATE     (2)
3568 #define LVIS_CUT        (4)
3569 #define LVIS_DROPHILITED        (8)
3570 #define LVIS_FOCUSED    (1)
3571 #define LVIS_SELECTED   (2)
3572 #define LVIS_OVERLAYMASK        (3840)
3573 #define LVIS_STATEIMAGEMASK     (61440)
3574 #define LPSTR_TEXTCALLBACKW     ((LPWSTR)-1L)
3575 #define LPSTR_TEXTCALLBACKA     ((LPSTR)-1L)
3576 #ifdef UNICODE
3577 #define LPSTR_TEXTCALLBACK LPSTR_TEXTCALLBACKW
3578 #else
3579 #define LPSTR_TEXTCALLBACK LPSTR_TEXTCALLBACKA
3580 #endif /* UNICODE */
3581
3582 /* LV_ITEM structure */
3583 #define LVIF_TEXT       (1)
3584 #define LVIF_IMAGE      (2)
3585 #define LVIF_PARAM      (4)
3586 #define LVIF_STATE      (8)
3587 #define LVIF_DI_SETITEM (4096)
3588
3589 /* LVM_GETNEXTITEM structure */
3590 #define LVNI_ABOVE      (256)
3591 #define LVNI_ALL        (0)
3592 #define LVNI_BELOW      (512)
3593 #define LVNI_TOLEFT     (1024)
3594 #define LVNI_TORIGHT    (2048)
3595 #define LVNI_CUT        (4)
3596 #define LVNI_DROPHILITED        (8)
3597 #define LVNI_FOCUSED    (1)
3598 #define LVNI_SELECTED   (2)
3599
3600 /* LV_FINDINFO structure */
3601 #define LVFI_PARAM      (1)
3602 #define LVFI_PARTIAL    (8)
3603 #define LVFI_STRING     (2)
3604 #define LVFI_WRAP       (32)
3605 #define LVFI_NEARESTXY  (64)
3606
3607 /* LV_HITTESTINFO structure */
3608 #define LVHT_ABOVE      (8)
3609 #define LVHT_BELOW      (16)
3610 #define LVHT_NOWHERE    (1)
3611 #define LVHT_ONITEMICON (2)
3612 #define LVHT_ONITEMLABEL        (4)
3613 #define LVHT_ONITEMSTATEICON    (8)
3614 #define LVHT_TOLEFT     (64)
3615 #define LVHT_TORIGHT    (32)
3616
3617 /* LV_COLUMN structure */
3618 #define LVCF_FMT        (1)
3619 #define LVCF_SUBITEM    (8)
3620 #define LVCF_TEXT       (4)
3621 #define LVCF_WIDTH      (2)
3622 #define LVCFMT_CENTER   (2)
3623 #define LVCFMT_LEFT     (0)
3624 #define LVCFMT_RIGHT    (1)
3625
3626 /* ListView_GetItemRect */
3627 #define LVIR_BOUNDS     (0)
3628 #define LVIR_ICON       (1)
3629 #define LVIR_LABEL      (2)
3630 #define LVIR_SELECTBOUNDS       (3)
3631
3632 /* LVM_ARRANGE message */
3633 #define LVA_ALIGNLEFT   (1)
3634 #define LVA_ALIGNTOP    (2)
3635 #define LVA_DEFAULT     (0)
3636 #define LVA_SNAPTOGRID  (5)
3637
3638 /* LVM_SETCOLUMNWIDTH message */
3639 #define LVSCW_AUTOSIZE  (-1)
3640 #define LVSCW_AUTOSIZE_USEHEADER        (-2)
3641
3642 /* Tree View styles */
3643 #define TVS_DISABLEDRAGDROP     (16)
3644 #define TVS_EDITLABELS  (8)
3645 #define TVS_HASBUTTONS  (1)
3646 #define TVS_HASLINES    (2)
3647 #define TVS_LINESATROOT (4)
3648 #define TVS_SHOWSELALWAYS       (32)
3649
3650 /* Tree View states */
3651 #define TVIS_BOLD       (16)
3652 #define TVIS_CUT        (4)
3653 #define TVIS_DROPHILITED        (8)
3654 #define TVIS_EXPANDED   (32)
3655 #define TVIS_EXPANDEDONCE       (64)
3656 #define TVIS_FOCUSED    (1)
3657 #define TVIS_OVERLAYMASK        (3840)
3658 #define TVIS_SELECTED   (2)
3659 #define TVIS_STATEIMAGEMASK     (61440)
3660 #define TVIS_USERMASK   (61440)
3661
3662 /* TV_ITEM structure */
3663 #define TVIF_CHILDREN   (64)
3664 #define TVIF_HANDLE     (16)
3665 #define TVIF_IMAGE      (2)
3666 #define TVIF_PARAM      (4)
3667 #define TVIF_SELECTEDIMAGE      (32)
3668 #define TVIF_STATE      (8)
3669 #define TVIF_TEXT       (1)
3670 #define I_CHILDRENCALLBACK      (-1)
3671 #define I_IMAGECALLBACK (-1)
3672
3673 /* TV_INSERTSTRUCT structure */
3674 #define TVI_ROOT        ((HTREEITEM)0xFFFF0000)
3675 #define TVI_FIRST       ((HTREEITEM)0xFFFF0001)
3676 #define TVI_LAST        ((HTREEITEM)0xFFFF0002)
3677 #define TVI_SORT        ((HTREEITEM)0xFFFF0003)
3678
3679 /* TV_HITTESTINFO structure */
3680 #define TVHT_ABOVE      (256)
3681 #define TVHT_BELOW      (512)
3682 #define TVHT_NOWHERE    (1)
3683 #define TVHT_ONITEM     (70)
3684 #define TVHT_ONITEMBUTTON       (16)
3685 #define TVHT_ONITEMICON (2)
3686 #define TVHT_ONITEMINDENT       (8)
3687 #define TVHT_ONITEMLABEL        (4)
3688 #define TVHT_ONITEMRIGHT        (32)
3689 #define TVHT_ONITEMSTATEICON    (64)
3690 #define TVHT_TOLEFT     (2048)
3691 #define TVHT_TORIGHT    (1024)
3692
3693 /* TVM_EXPAND message */
3694 #define TVE_COLLAPSE    (1)
3695 #define TVE_COLLAPSERESET       (32768)
3696 #define TVE_EXPAND      (2)
3697 #define TVE_TOGGLE      (3)
3698
3699 /* TVM_GETIMAGELIST message */
3700 #define TVSIL_NORMAL    (0)
3701 #define TVSIL_STATE     (2)
3702
3703 /* TVM_GETNEXTITEM message */
3704 #define TVGN_CARET      (9)
3705 #define TVGN_CHILD      (4)
3706 #define TVGN_DROPHILITE (8)
3707 #define TVGN_FIRSTVISIBLE       (5)
3708 #define TVGN_NEXT       (1)
3709 #define TVGN_NEXTVISIBLE        (6)
3710 #define TVGN_PARENT     (3)
3711 #define TVGN_PREVIOUS   (2)
3712 #define TVGN_PREVIOUSVISIBLE    (7)
3713 #define TVGN_ROOT       (0)
3714
3715 /* TVN_SELCHANGED message */
3716 #define TVC_BYKEYBOARD  (2)
3717 #define TVC_BYMOUSE     (1)
3718 #define TVC_UNKNOWN     (0)
3719
3720 /* Tab control styles */
3721 #define TCS_BUTTONS     (256)
3722 #define TCS_FIXEDWIDTH  (1024)
3723 #define TCS_FOCUSNEVER  (32768)
3724 #define TCS_FOCUSONBUTTONDOWN   (4096)
3725 #define TCS_FORCEICONLEFT       (16)
3726 #define TCS_FORCELABELLEFT      (32)
3727 #define TCS_MULTILINE   (512)
3728 #define TCS_OWNERDRAWFIXED      (8192)
3729 #define TCS_RAGGEDRIGHT (2048)
3730 #define TCS_RIGHTJUSTIFY        (0)
3731 #define TCS_SINGLELINE  (0)
3732 #define TCS_TABS        (0)
3733 #define TCS_TOOLTIPS    (16384)
3734
3735 /* TC_ITEM structure */
3736 #define TCIF_TEXT       (1)
3737 #define TCIF_IMAGE      (2)
3738 #define TCIF_PARAM      (8)
3739 #define TCIF_RTLREADING (4)
3740
3741 /* TC_HITTESTINFO structure */
3742 #define TCHT_NOWHERE    (1)
3743 #define TCHT_ONITEM     (6)
3744 #define TCHT_ONITEMICON (2)
3745 #define TCHT_ONITEMLABEL        (4)
3746
3747 /* Animation control styles */
3748 #define ACS_AUTOPLAY    (4)
3749 #define ACS_CENTER      (1)
3750 #define ACS_TRANSPARENT (2)
3751
3752 /* MODEMDEVCAPS structure */
3753 #define DIALOPTION_BILLING      (64)
3754 #define DIALOPTION_QUIET        (128)
3755 #define DIALOPTION_DIALTONE     (256)
3756 #define MDMVOLFLAG_LOW  (1)
3757 #define MDMVOLFLAG_MEDIUM       (2)
3758 #define MDMVOLFLAG_HIGH (4)
3759 #define MDMVOL_LOW      (0)
3760 #define MDMVOL_MEDIUM   (1)
3761 #define MDMVOL_HIGH     (2)
3762 #define MDMSPKRFLAG_OFF (1)
3763 #define MDMSPKRFLAG_DIAL        (2)
3764 #define MDMSPKRFLAG_ON  (4)
3765 #define MDMSPKRFLAG_CALLSETUP   (8)
3766 #define MDMSPKR_OFF     (0)
3767 #define MDMSPKR_DIAL    (1)
3768 #define MDMSPKR_ON      (2)
3769 #define MDMSPKR_CALLSETUP       (3)
3770 #define MDM_BLIND_DIAL  (512)
3771 #define MDM_CCITT_OVERRIDE      (64)
3772 #define MDM_CELLULAR    (8)
3773 #define MDM_COMPRESSION (1)
3774 #define MDM_ERROR_CONTROL       (2)
3775 #define MDM_FLOWCONTROL_HARD    (16)
3776 #define MDM_FLOWCONTROL_SOFT    (32)
3777 #define MDM_FORCED_EC   (4)
3778 #define MDM_SPEED_ADJUST        (128)
3779 #define MDM_TONE_DIAL   (256)
3780 #define MDM_V23_OVERRIDE        (1024)
3781
3782 /* Languages */
3783 #define LANG_BULGARIAN  (2)
3784 #define LANG_CHINESE    (4)
3785 #define LANG_CROATIAN   (26)
3786 #define LANG_CZECH      (5)
3787 #define LANG_DANISH     (6)
3788 #define LANG_DUTCH      (19)
3789 #define LANG_ENGLISH    (9)
3790 #define LANG_FINNISH    (11)
3791 #define LANG_FRENCH     (12)
3792 #define LANG_GERMAN     (7)
3793 #define LANG_GREEK      (8)
3794 #define LANG_HUNGARIAN  (14)
3795 #define LANG_ICELANDIC  (15)
3796 #define LANG_ITALIAN    (16)
3797 #define LANG_JAPANESE   (17)
3798 #define LANG_KOREAN     (18)
3799 #define LANG_NEUTRAL    (0)
3800 #define LANG_NORWEGIAN  (20)
3801 #define LANG_POLISH     (21)
3802 #define LANG_PORTUGUESE (22)
3803 #define LANG_ROMANIAN   (24)
3804 #define LANG_RUSSIAN    (25)
3805 #define LANG_SLOVAK     (27)
3806 #define LANG_SLOVENIAN  (36)
3807 #define LANG_SPANISH    (10)
3808 #define LANG_SWEDISH    (29)
3809 #define LANG_TURKISH    (31)
3810 #define SUBLANG_CHINESE_SIMPLIFIED      (2)
3811 #define SUBLANG_CHINESE_TRADITIONAL     (1)
3812 #define SUBLANG_CHINESE_HONGKONG        (3)
3813 #define SUBLANG_CHINESE_SINGAPORE       (4)
3814 #define SUBLANG_DEFAULT (1)
3815 #define SUBLANG_DUTCH   (1)
3816 #define SUBLANG_DUTCH_BELGIAN   (2)
3817 #define SUBLANG_ENGLISH_AUS     (3)
3818 #define SUBLANG_ENGLISH_CAN     (4)
3819 #define SUBLANG_ENGLISH_EIRE    (6)
3820 #define SUBLANG_ENGLISH_NZ      (5)
3821 #define SUBLANG_ENGLISH_UK      (2)
3822 #define SUBLANG_ENGLISH_US      (1)
3823 #define SUBLANG_FRENCH  (1)
3824 #define SUBLANG_FRENCH_BELGIAN  (2)
3825 #define SUBLANG_FRENCH_CANADIAN (3)
3826 #define SUBLANG_FRENCH_SWISS    (4)
3827 #define SUBLANG_GERMAN  (1)
3828 #define SUBLANG_GERMAN_AUSTRIAN (3)
3829 #define SUBLANG_GERMAN_SWISS    (2)
3830 #define SUBLANG_ITALIAN (1)
3831 #define SUBLANG_ITALIAN_SWISS   (2)
3832 #define SUBLANG_NEUTRAL (0)
3833 #define SUBLANG_NORWEGIAN_BOKMAL        (1)
3834 #define SUBLANG_NORWEGIAN_NYNORSK       (2)
3835 #define SUBLANG_PORTUGUESE      (2)
3836 #define SUBLANG_PORTUGUESE_BRAZILIAN    (1)
3837 #define SUBLANG_SPANISH (1)
3838 #define SUBLANG_SPANISH_MEXICAN (2)
3839 #define SUBLANG_SPANISH_MODERN  (3)
3840 #define SUBLANG_SYS_DEFAULT     (2)
3841 #define NLS_VALID_LOCALE_MASK   (1048575)
3842 #define SORT_DEFAULT    (0)
3843 #define SORT_JAPANESE_XJIS      (0)
3844 #define SORT_JAPANESE_UNICODE   (1)
3845 #define SORT_CHINESE_BIG5       (0)
3846 #define SORT_CHINESE_UNICODE    (1)
3847 #define SORT_KOREAN_KSC (0)
3848 #define SORT_KOREAN_UNICODE     (1)
3849
3850 /* SYSTEM_INFO structure */
3851 #define PROCESSOR_INTEL_386     (386)
3852 #define PROCESSOR_INTEL_486     (486)
3853 #define PROCESSOR_INTEL_PENTIUM (586)
3854 #define PROCESSOR_MIPS_R4000    (4000)
3855 #define PROCESSOR_ALPHA_21064   (21064)
3856
3857 /* TAPE_GET_DRIVE_PARAMETERS structure */
3858 #define TAPE_DRIVE_COMPRESSION  (131072)
3859 #define TAPE_DRIVE_ECC  (65536)
3860 #define TAPE_DRIVE_ERASE_BOP_ONLY       (64)
3861 #define TAPE_DRIVE_ERASE_LONG   (32)
3862 #define TAPE_DRIVE_ERASE_IMMEDIATE      (128)
3863 #define TAPE_DRIVE_ERASE_SHORT  (16)
3864 #define TAPE_DRIVE_FIXED        (1)
3865 #define TAPE_DRIVE_FIXED_BLOCK  (1024)
3866 #define TAPE_DRIVE_INITIATOR    (4)
3867 #define TAPE_DRIVE_PADDING      (262144)
3868 #define TAPE_DRIVE_GET_ABSOLUTE_BLK     (1048576)
3869 #define TAPE_DRIVE_GET_LOGICAL_BLK      (2097152)
3870 #define TAPE_DRIVE_REPORT_SMKS  (524288)
3871 #define TAPE_DRIVE_SELECT       (2)
3872 #define TAPE_DRIVE_SET_EOT_WZ_SIZE      (4194304)
3873 #define TAPE_DRIVE_TAPE_CAPACITY        (256)
3874 #define TAPE_DRIVE_TAPE_REMAINING       (512)
3875 #define TAPE_DRIVE_VARIABLE_BLOCK       (2048)
3876 #define TAPE_DRIVE_WRITE_PROTECT        (4096)
3877 #define TAPE_DRIVE_ABS_BLK_IMMED        (-2147475456)
3878 #define TAPE_DRIVE_ABSOLUTE_BLK (-2147479552)
3879 #define TAPE_DRIVE_END_OF_DATA  (-2147418112)
3880 #define TAPE_DRIVE_FILEMARKS    (-2147221504)
3881 #define TAPE_DRIVE_LOAD_UNLOAD  (-2147483647)
3882 #define TAPE_DRIVE_LOAD_UNLD_IMMED      (-2147483616)
3883 #define TAPE_DRIVE_LOCK_UNLOCK  (-2147483644)
3884 #define TAPE_DRIVE_LOCK_UNLK_IMMED      (-2147483520)
3885 #define TAPE_DRIVE_LOG_BLK_IMMED        (-2147450880)
3886 #define TAPE_DRIVE_LOGICAL_BLK  (-2147467264)
3887 #define TAPE_DRIVE_RELATIVE_BLKS        (-2147352576)
3888 #define TAPE_DRIVE_REVERSE_POSITION     (-2143289344)
3889 #define TAPE_DRIVE_REWIND_IMMEDIATE     (-2147483640)
3890 #define TAPE_DRIVE_SEQUENTIAL_FMKS      (-2146959360)
3891 #define TAPE_DRIVE_SEQUENTIAL_SMKS      (-2145386496)
3892 #define TAPE_DRIVE_SET_BLOCK_SIZE       (-2147483632)
3893 #define TAPE_DRIVE_SET_COMPRESSION      (-2147483136)
3894 #define TAPE_DRIVE_SET_ECC      (-2147483392)
3895 #define TAPE_DRIVE_SET_PADDING  (-2147482624)
3896 #define TAPE_DRIVE_SET_REPORT_SMKS      (-2147481600)
3897 #define TAPE_DRIVE_SETMARKS     (-2146435072)
3898 #define TAPE_DRIVE_SPACE_IMMEDIATE      (-2139095040)
3899 #define TAPE_DRIVE_TENSION      (-2147483646)
3900 #define TAPE_DRIVE_TENSION_IMMED        (-2147483584)
3901 #define TAPE_DRIVE_WRITE_FILEMARKS      (-2113929216)
3902 #define TAPE_DRIVE_WRITE_LONG_FMKS      (-2013265920)
3903 #define TAPE_DRIVE_WRITE_MARK_IMMED     (-1879048192)
3904 #define TAPE_DRIVE_WRITE_SETMARKS       (-2130706432)
3905 #define TAPE_DRIVE_WRITE_SHORT_FMKS     (-2080374784)
3906
3907 /* OPENFILENAME structure */
3908 #define OFN_ALLOWMULTISELECT    (0x200)
3909 #define OFN_CREATEPROMPT        (0x2000)
3910 #define OFN_ENABLEHOOK  (0x20)
3911 #define OFN_ENABLETEMPLATE      (0x40)
3912 #define OFN_ENABLETEMPLATEHANDLE        (0x80)
3913 #define OFN_EXPLORER    (0x80000)
3914 #define OFN_EXTENSIONDIFFERENT  (0x400)
3915 #define OFN_FILEMUSTEXIST       (0x1000)
3916 #define OFN_HIDEREADONLY        (0x4)
3917 #define OFN_LONGNAMES   (0x200000)
3918 #define OFN_NOCHANGEDIR (0x8)
3919 #define OFN_NODEREFERENCELINKS  (0x100000)
3920 #define OFN_NOLONGNAMES (0x40000)
3921 #define OFN_NONETWORKBUTTON     (0x20000)
3922 #define OFN_NOREADONLYRETURN    (0x8000)
3923 #define OFN_NOTESTFILECREATE    (0x10000)
3924 #define OFN_NOVALIDATE  (0x100)
3925 #define OFN_OVERWRITEPROMPT     (0x2)
3926 #define OFN_PATHMUSTEXIST       (0x800)
3927 #define OFN_READONLY    (0x1)
3928 #define OFN_SHAREAWARE  (0x4000)
3929 #define OFN_SHOWHELP    (0x10)
3930
3931 /* SHAREVISTRING message */
3932 #define OFN_SHAREFALLTHROUGH    (0x2)
3933 #define OFN_SHARENOWARN (0x1)
3934 #define OFN_SHAREWARN   (0)
3935
3936 /* Open/Save notifications */
3937 #define CDN_INITDONE    (0xfffffda7)
3938 #define CDN_SELCHANGE   (0xfffffda6)
3939 #define CDN_FOLDERCHANGE        (0xfffffda5)
3940 #define CDN_SHAREVIOLATION      (0xfffffda4)
3941 #define CDN_HELP        (0xfffffda3)
3942 #define CDN_FILEOK      (0xfffffda2)
3943 #define CDN_TYPECHANGE  (0xfffffda1)
3944
3945 /* Open/Save messages */
3946 #define CDM_GETFILEPATH (0x465)
3947 #define CDM_GETFOLDERIDLIST     (0x467)
3948 #define CDM_GETFOLDERPATH       (0x466)
3949 #define CDM_GETSPEC     (0x464)
3950 #define CDM_HIDECONTROL (0x469)
3951 #define CDM_SETCONTROLTEXT      (0x468)
3952 #define CDM_SETDEFEXT   (0x46a)
3953
3954 /* CHOOSECOLOR structure */
3955 #define CC_ENABLEHOOK   (0x10)
3956 #define CC_ENABLETEMPLATE       (0x20)
3957 #define CC_ENABLETEMPLATEHANDLE (0x40)
3958 #define CC_FULLOPEN     (0x2)
3959 #define CC_PREVENTFULLOPEN      (0x4)
3960 #define CC_RGBINIT      (0x1)
3961 #define CC_SHOWHELP     (0x8)
3962 #define CC_SOLIDCOLOR   (0x80)
3963
3964 /* FINDREPLACE structure */
3965 #define FR_DIALOGTERM   (0x40)
3966 #define FR_DOWN (0x1)
3967 #define FR_ENABLEHOOK   (0x100)
3968 #define FR_ENABLETEMPLATE       (0x200)
3969 #define FR_ENABLETEMPLATEHANDLE (0x2000)
3970 #define FR_FINDNEXT     (0x8)
3971 #define FR_HIDEUPDOWN   (0x4000)
3972 #define FR_HIDEMATCHCASE        (0x8000)
3973 #define FR_HIDEWHOLEWORD        (0x10000)
3974 #define FR_MATCHCASE    (0x4)
3975 #define FR_NOMATCHCASE  (0x800)
3976 #define FR_NOUPDOWN     (0x400)
3977 #define FR_NOWHOLEWORD  (0x1000)
3978 #define FR_REPLACE      (0x10)
3979 #define FR_REPLACEALL   (0x20)
3980 #define FR_SHOWHELP     (0x80)
3981 #define FR_WHOLEWORD    (0x2)
3982
3983 /* CHOOSEFONT structure */
3984 #define CF_APPLY        (0x200L)
3985 #define CF_ANSIONLY     (0x400L)
3986 #define CF_BOTH (0x3)
3987 #define CF_TTONLY       (0x40000L)
3988 #define CF_EFFECTS      (0x100L)
3989 #define CF_ENABLEHOOK   (0x8L)
3990 #define CF_ENABLETEMPLATE       (0x10L)
3991 #define CF_ENABLETEMPLATEHANDLE (0x20L)
3992 #define CF_FIXEDPITCHONLY       (0x4000L)
3993 #define CF_FORCEFONTEXIST       (0x10000L)
3994 #define CF_INITTOLOGFONTSTRUCT  (0x40L)
3995 #define CF_LIMITSIZE    (0x2000L)
3996 #define CF_NOOEMFONTS   (0x800L)
3997 #define CF_NOFACESEL    (0x80000L)
3998 #define CF_NOSCRIPTSEL  (0x800000L)
3999 #define CF_NOSTYLESEL   (0x100000L)
4000 #define CF_NOSIZESEL    (0x200000L)
4001 #define CF_NOSIMULATIONS        (0x1000L)
4002 #define CF_NOVECTORFONTS        (0x800L)
4003 #define CF_NOVERTFONTS  (0x1000000L)
4004 #define CF_PRINTERFONTS (0x2)
4005 #define CF_SCALABLEONLY (0x20000L)
4006 #define CF_SCREENFONTS  (0x1)
4007 #define CF_SCRIPTSONLY  (0x400L)
4008 #define CF_SELECTSCRIPT (0x400000L)
4009 #define CF_SHOWHELP     (0x4L)
4010 #define CF_USESTYLE     (0x80L)
4011 #define CF_WYSIWYG      (0x8000L)
4012 #define BOLD_FONTTYPE   (0x100)
4013 #define ITALIC_FONTTYPE (0x200)
4014 #define PRINTER_FONTTYPE        (0x4000)
4015 #define REGULAR_FONTTYPE        (0x400)
4016 #define SCREEN_FONTTYPE (0x2000)
4017 #define SIMULATED_FONTTYPE      (0x8000)
4018
4019 /* Common dialog messages */
4020 #define COLOROKSTRINGW  L"commdlg_ColorOK"
4021 #define FILEOKSTRINGW   L"commdlg_FileNameOK"
4022 #define FINDMSGSTRINGW  L"commdlg_FindReplace"
4023 #define HELPMSGSTRINGW  L"commdlg_help"
4024 #define LBSELCHSTRINGW  L"commdlg_LBSelChangedNotify"
4025 #define SETRGBSTRINGW   L"commdlg_SetRGBColor"
4026 #define SHAREVISTRINGW  L"commdlg_ShareViolation"
4027 #define COLOROKSTRINGA  "commdlg_ColorOK"
4028 #define FILEOKSTRINGA   "commdlg_FileNameOK"
4029 #define FINDMSGSTRINGA  "commdlg_FindReplace"
4030 #define HELPMSGSTRINGA  "commdlg_help"
4031 #define LBSELCHSTRINGA  "commdlg_LBSelChangedNotify"
4032 #define SETRGBSTRINGA   "commdlg_SetRGBColor"
4033 #define SHAREVISTRINGA  "commdlg_ShareViolation"
4034 #ifdef UNICODE
4035 #define COLOROKSTRING COLOROKSTRINGW
4036 #define FILEOKSTRING FILEOKSTRINGW
4037 #define FINDMSGSTRING FINDMSGSTRINGW
4038 #define HELPMSGSTRING HELPMSGSTRINGW
4039 #define LBSELCHSTRING LBSELCHSTRINGW
4040 #define SETRGBSTRING SETRGBSTRINGW
4041 #define SHAREVISTRING SHAREVISTRINGW
4042 #else
4043 #define COLOROKSTRING COLOROKSTRINGA
4044 #define FILEOKSTRING FILEOKSTRINGA
4045 #define FINDMSGSTRING FINDMSGSTRINGA
4046 #define HELPMSGSTRING HELPMSGSTRINGA
4047 #define LBSELCHSTRING LBSELCHSTRINGA
4048 #define SETRGBSTRING SETRGBSTRINGA
4049 #define SHAREVISTRING SHAREVISTRINGA
4050 #endif
4051
4052 /* LBSELCHSTRING message */
4053 #define CD_LBSELCHANGE  (0)
4054 #define CD_LBSELADD     (2)
4055 #define CD_LBSELSUB     (1)
4056 #define CD_LBSELNOITEMS (-1)
4057
4058 /* DEVNAMES structure */
4059 #define DN_DEFAULTPRN   (1)
4060
4061 /* PRINTDLG structure */
4062 #define PD_ALLPAGES     (0)
4063 #define PD_COLLATE      (16)
4064 #define PD_DISABLEPRINTTOFILE   (524288)
4065 #define PD_ENABLEPRINTHOOK      (4096)
4066 #define PD_ENABLEPRINTTEMPLATE  (16384)
4067 #define PD_ENABLEPRINTTEMPLATEHANDLE    (65536)
4068 #define PD_ENABLESETUPHOOK      (8192)
4069 #define PD_ENABLESETUPTEMPLATE  (32768)
4070 #define PD_ENABLESETUPTEMPLATEHANDLE    (131072)
4071 #define PD_HIDEPRINTTOFILE      (1048576)
4072 #define PD_NOPAGENUMS   (8)
4073 #define PD_NOSELECTION  (4)
4074 #define PD_NOWARNING    (128)
4075 #define PD_PAGENUMS     (2)
4076 #define PD_PRINTSETUP   (64)
4077 #define PD_PRINTTOFILE  (32)
4078 #define PD_RETURNDC     (256)
4079 #define PD_RETURNDEFAULT        (1024)
4080 #define PD_RETURNIC     (512)
4081 #define PD_SELECTION    (1)
4082 #define PD_SHOWHELP     (2048)
4083 #define PD_USEDEVMODECOPIES     (262144)
4084 #define PD_USEDEVMODECOPIESANDCOLLATE   (262144)
4085
4086 /* PAGESETUPDLG structure */
4087 #define PSD_DEFAULTMINMARGINS   (0)
4088 #define PSD_DISABLEMARGINS      (16)
4089 #define PSD_DISABLEORIENTATION  (256)
4090 #define PSD_DISABLEPAGEPAINTING (524288)
4091 #define PSD_DISABLEPAPER        (512)
4092 #define PSD_DISABLEPRINTER      (32)
4093 #define PSD_ENABLEPAGEPAINTHOOK (262144)
4094 #define PSD_ENABLEPAGESETUPHOOK (8192)
4095 #define PSD_ENABLEPAGESETUPTEMPLATE     (32768)
4096 #define PSD_ENABLEPAGESETUPTEMPLATEHANDLE       (131072)
4097 #define PSD_INHUNDREDTHSOFMILLIMETERS   (8)
4098 #define PSD_INTHOUSANDTHSOFINCHES       (4)
4099 #define PSD_INWININIINTLMEASURE (0)
4100 #define PSD_MARGINS     (2)
4101 #define PSD_MINMARGINS  (1)
4102 #define PSD_NOWARNING   (128)
4103 #define PSD_RETURNDEFAULT       (1024)
4104 #define PSD_SHOWHELP    (2048)
4105
4106 /* WM_SHOWWINDOW message */
4107 #define SW_OTHERUNZOOM  (4)
4108 #define SW_OTHERZOOM    (2)
4109 #define SW_PARENTCLOSING        (1)
4110 #define SW_PARENTOPENING        (3)
4111
4112 /* ImmGetVirtualKey */
4113 #define VK_PROCESSKEY   (229)
4114
4115 /* Keystroke Message Flags */
4116 #define KF_ALTDOWN      (8192)
4117 #define KF_DLGMODE      (2048)
4118 #define KF_EXTENDED     (256)
4119 #define KF_MENUMODE     (4096)
4120 #define KF_REPEAT       (16384)
4121 #define KF_UP   (32768)
4122
4123 /* GetKeyboardLayoutName */
4124 #define KL_NAMELENGTH   (9)
4125
4126 /* WM_ACTIVATE message */
4127 #define WA_ACTIVE       (1)
4128 #define WA_CLICKACTIVE  (2)
4129 #define WA_INACTIVE     (0)
4130
4131 /* WM_ACTIVATE message */
4132 #define PWR_CRITICALRESUME      (3)
4133 #define PWR_SUSPENDREQUEST      (1)
4134 #define PWR_SUSPENDRESUME       (2)
4135 #define PWR_FAIL        (-1)
4136 #define PWR_OK  (1)
4137
4138 /* WM_NOTIFYFORMAT message */
4139 #define NF_QUERY        (3)
4140 #define NF_REQUERY      (4)
4141 #define NFR_ANSI        (1)
4142 #define NFR_UNICODE     (2)
4143
4144 /* WM_SIZING message */
4145 #define WMSZ_BOTTOM     (6)
4146 #define WMSZ_BOTTOMLEFT (7)
4147 #define WMSZ_BOTTOMRIGHT        (8)
4148 #define WMSZ_LEFT       (1)
4149 #define WMSZ_RIGHT      (2)
4150 #define WMSZ_TOP        (3)
4151 #define WMSZ_TOPLEFT    (4)
4152 #define WMSZ_TOPRIGHT   (5)
4153
4154 /* WM_MOUSEACTIVATE message */
4155 #define MA_ACTIVATE     (1)
4156 #define MA_ACTIVATEANDEAT       (2)
4157 #define MA_NOACTIVATE   (3)
4158 #define MA_NOACTIVATEANDEAT     (4)
4159
4160 /* WM_SIZE message */
4161 #define SIZE_MAXHIDE    (4)
4162 #define SIZE_MAXIMIZED  (2)
4163 #define SIZE_MAXSHOW    (3)
4164 #define SIZE_MINIMIZED  (1)
4165 #define SIZE_RESTORED   (0)
4166
4167 /* WM_NCCALCSIZE message */
4168 #define WVR_ALIGNTOP    (16)
4169 #define WVR_ALIGNLEFT   (32)
4170 #define WVR_ALIGNBOTTOM (64)
4171 #define WVR_ALIGNRIGHT  (128)
4172 #define WVR_HREDRAW     (256)
4173 #define WVR_VREDRAW     (512)
4174 #define WVR_REDRAW      (768)
4175 #define WVR_VALIDRECTS  (1024)
4176
4177 /* WM_NCHITTEST message */
4178 #define HTBOTTOM        (15)
4179 #define HTBOTTOMLEFT    (16)
4180 #define HTBOTTOMRIGHT   (17)
4181 #define HTCAPTION       (2)
4182 #define HTCLIENT        (1)
4183 #define HTERROR         (-2)
4184 #define HTGROWBOX       (4)
4185 #define HTHSCROLL       (6)
4186 #define HTLEFT          (10)
4187 #define HTMENU          (5)
4188 #define HTNOWHERE       (0)
4189 #define HTREDUCE        (8)
4190 #define HTRIGHT         (11)
4191 #define HTSIZE          (4)
4192 #define HTSYSMENU       (3)
4193 #define HTTOP           (12)
4194 #define HTTOPLEFT       (13)
4195 #define HTTOPRIGHT      (14)
4196 #define HTTRANSPARENT   (-1)
4197 #define HTVSCROLL       (7)
4198 #define HTZOOM          (9)
4199 #define HTBORDER        (18)
4200 #define HTCLOSE         (20)
4201 #define HTMAXBUTTON HTZOOM
4202 #define HTMINBUTTON HTREDUCE
4203
4204 /* Mouse messages */
4205 #define MK_CONTROL      (8)
4206 #define MK_LBUTTON      (1)
4207 #define MK_MBUTTON      (16)
4208 #define MK_RBUTTON      (2)
4209 #define MK_SHIFT        (4)
4210
4211 /* WNDCLASS structure */
4212 #define CS_BYTEALIGNCLIENT      (4096)
4213 #define CS_BYTEALIGNWINDOW      (8192)
4214 #define CS_CLASSDC      (64)
4215 #define CS_DBLCLKS      (8)
4216 #define CS_GLOBALCLASS  (16384)
4217 #define CS_HREDRAW      (2)
4218 #define CS_KEYCVTWINDOW (4)
4219 #define CS_NOCLOSE      (512)
4220 #define CS_NOKEYCVT     (256)
4221 #define CS_OWNDC        (32)
4222 #define CS_PARENTDC     (128)
4223 #define CS_SAVEBITS     (2048)
4224 #define CS_VREDRAW      (1)
4225 #define DLGWINDOWEXTRA  (30)
4226
4227 /* ACCEL structure */
4228 #define FALT    (16)
4229 #define FCONTROL        (8)
4230 #define FNOINVERT       (2)
4231 #define FSHIFT  (4)
4232 #define FVIRTKEY        (1)
4233
4234 /* MENUITEMINFO structure */
4235 #define MIIM_CHECKMARKS (8)
4236 #define MIIM_DATA       (32)
4237 #define MIIM_ID (2)
4238 #define MIIM_STATE      (1)
4239 #define MIIM_SUBMENU    (4)
4240 #define MIIM_TYPE       (16)
4241 #define MFT_BITMAP      (0x4L)
4242 #define MFT_MENUBARBREAK        (0x20L)
4243 #define MFT_MENUBREAK   (0x40L)
4244 #define MFT_OWNERDRAW   (0x100L)
4245 #define MFT_RADIOCHECK  (0x200L)
4246 #define MFT_RIGHTJUSTIFY        (0x4000L)
4247 #define MFT_SEPARATOR   (0x800L)
4248 #define MFT_STRING      (0L)
4249 #define MFS_CHECKED     (0x8L)
4250 #define MFS_DEFAULT     (0x1000L)
4251 #define MFS_DISABLED    (0x3L)
4252 #define MFS_ENABLED     (0L)
4253 #define MFS_GRAYED      (0x3L)
4254 #define MFS_HILITE      (0x80L)
4255 #define MFS_UNCHECKED   (0L)
4256 #define MFS_UNHILITE    (0L)
4257
4258 /* SERIALKEYS structure */
4259 #define SERKF_AVAILABLE (2)
4260 #define SERKF_INDICATOR (4)
4261 #define SERKF_SERIALKEYSON      (1)
4262
4263 /* FILTERKEYS structure */
4264 #define FKF_AVAILABLE   (2)
4265 #define FKF_CLICKON     (64)
4266 #define FKF_FILTERKEYSON        (1)
4267 #define FKF_HOTKEYACTIVE        (4)
4268 #define FKF_HOTKEYSOUND (16)
4269 #define FKF_CONFIRMHOTKEY       (8)
4270 #define FKF_INDICATOR   (32)
4271
4272 /* HELPINFO structure */
4273 #define HELPINFO_MENUITEM       (2)
4274 #define HELPINFO_WINDOW (1)
4275
4276 /* WM_PRINT message */
4277 #define PRF_CHECKVISIBLE        (0x1L)
4278 #define PRF_CHILDREN    (0x10L)
4279 #define PRF_CLIENT      (0x4L)
4280 #define PRF_ERASEBKGND  (0x8L)
4281 #define PRF_NONCLIENT   (0x2L)
4282 #define PRF_OWNED       (0x20L)
4283
4284 /* MapWindowPoints */
4285 #define HWND_DESKTOP    ((HWND)0)
4286
4287 /* WM_SYSCOMMAND message */
4288 #define SC_CLOSE        (61536)
4289 #define SC_CONTEXTHELP  (61824)
4290 #define SC_DEFAULT      (61792)
4291 #define SC_HOTKEY       (61776)
4292 #define SC_HSCROLL      (61568)
4293 #define SC_KEYMENU      (61696)
4294 #define SC_MAXIMIZE     (61488)
4295 #define SC_ZOOM (61488)
4296 #define SC_MINIMIZE     (61472)
4297 #define SC_ICON (61472)
4298 #define SC_MONITORPOWER (61808)
4299 #define SC_MOUSEMENU    (61584)
4300 #define SC_MOVE (61456)
4301 #define SC_NEXTWINDOW   (61504)
4302 #define SC_PREVWINDOW   (61520)
4303 #define SC_RESTORE      (61728)
4304 #define SC_SCREENSAVE   (61760)
4305 #define SC_SIZE (61440)
4306 #define SC_TASKLIST     (61744)
4307 #define SC_VSCROLL      (61552)
4308
4309 /* DM_GETDEFID message */
4310 #define DC_HASDEFID     (21323)
4311
4312 /* WM_GETDLGCODE message */
4313 #define DLGC_BUTTON     (8192)
4314 #define DLGC_DEFPUSHBUTTON      (16)
4315 #define DLGC_HASSETSEL  (8)
4316 #define DLGC_RADIOBUTTON        (64)
4317 #define DLGC_STATIC     (256)
4318 #define DLGC_UNDEFPUSHBUTTON    (32)
4319 #define DLGC_WANTALLKEYS        (4)
4320 #define DLGC_WANTARROWS (1)
4321 #define DLGC_WANTCHARS  (128)
4322 #define DLGC_WANTMESSAGE        (4)
4323 #define DLGC_WANTTAB    (2)
4324
4325 /* EM_SETMARGINS message */
4326 #define EC_LEFTMARGIN   (1)
4327 #define EC_RIGHTMARGIN  (2)
4328 #define EC_USEFONTINFO  (65535)
4329
4330 /* LB_SETCOUNT message */
4331 #define LB_ERR          (-1)
4332 #define LB_ERRSPACE     (-2)
4333 #define LB_OKAY         (0)
4334
4335 /* CB_DIR message */
4336 #define CB_ERR  (-1)
4337 #define CB_ERRSPACE     (-2)
4338
4339 /* WM_IME_CONTROL message */
4340 #define IMC_GETCANDIDATEPOS     (7)
4341 #define IMC_GETCOMPOSITIONFONT  (9)
4342 #define IMC_GETCOMPOSITIONWINDOW        (11)
4343 #define IMC_GETSTATUSWINDOWPOS  (15)
4344 #define IMC_CLOSESTATUSWINDOW   (33)
4345 #define IMC_OPENSTATUSWINDOW    (34)
4346 #define IMC_SETCANDIDATEPOS     (8)
4347 #define IMC_SETCOMPOSITIONFONT  (10)
4348 #define IMC_SETCOMPOSITIONWINDOW        (12)
4349 #define IMC_SETSTATUSWINDOWPOS  (16)
4350
4351 /* WM_IME_CONTROL message */
4352 #define IMN_CHANGECANDIDATE     (3)
4353 #define IMN_CLOSECANDIDATE      (4)
4354 #define IMN_CLOSESTATUSWINDOW   (1)
4355 #define IMN_GUIDELINE   (13)
4356 #define IMN_OPENCANDIDATE       (5)
4357 #define IMN_OPENSTATUSWINDOW    (2)
4358 #define IMN_SETCANDIDATEPOS     (9)
4359 #define IMN_SETCOMPOSITIONFONT  (10)
4360 #define IMN_SETCOMPOSITIONWINDOW        (11)
4361 #define IMN_SETCONVERSIONMODE   (6)
4362 #define IMN_SETOPENSTATUS       (8)
4363 #define IMN_SETSENTENCEMODE     (7)
4364 #define IMN_SETSTATUSWINDOWPOS  (12)
4365 #define IMN_PRIVATE     (14)
4366
4367 /* STICKYKEYS structure */
4368 #define SKF_AUDIBLEFEEDBACK     (64)
4369 #define SKF_AVAILABLE   (2)
4370 #define SKF_CONFIRMHOTKEY       (8)
4371 #define SKF_HOTKEYACTIVE        (4)
4372 #define SKF_HOTKEYSOUND (16)
4373 #define SKF_INDICATOR   (32)
4374 #define SKF_STICKYKEYSON        (1)
4375 #define SKF_TRISTATE    (128)
4376 #define SKF_TWOKEYSOFF  (256)
4377
4378 /* MOUSEKEYS structure */
4379 #define MKF_AVAILABLE   (2)
4380 #define MKF_CONFIRMHOTKEY       (8)
4381 #define MKF_HOTKEYACTIVE        (4)
4382 #define MKF_HOTKEYSOUND (16)
4383 #define MKF_INDICATOR   (32)
4384 #define MKF_MOUSEKEYSON (1)
4385 #define MKF_MODIFIERS   (64)
4386 #define MKF_REPLACENUMBERS      (128)
4387
4388 /* SOUNDSENTRY structure */
4389 #define SSF_AVAILABLE   (2)
4390 #define SSF_SOUNDSENTRYON       (1)
4391 #define SSTF_BORDER     (2)
4392 #define SSTF_CHARS      (1)
4393 #define SSTF_DISPLAY    (3)
4394 #define SSTF_NONE       (0)
4395 #define SSGF_DISPLAY    (3)
4396 #define SSGF_NONE       (0)
4397 #define SSWF_CUSTOM     (4)
4398 #define SSWF_DISPLAY    (3)
4399 #define SSWF_NONE       (0)
4400 #define SSWF_TITLE      (1)
4401 #define SSWF_WINDOW     (2)
4402
4403 /* ACCESSTIMEOUT structure */
4404 #define ATF_ONOFFFEEDBACK       (2)
4405 #define ATF_TIMEOUTON   (1)
4406
4407 /* HIGHCONTRAST structure */
4408 #define HCF_AVAILABLE   (2)
4409 #define HCF_CONFIRMHOTKEY       (8)
4410 #define HCF_HIGHCONTRASTON      (1)
4411 #define HCF_HOTKEYACTIVE        (4)
4412 #define HCF_HOTKEYAVAILABLE     (64)
4413 #define HCF_HOTKEYSOUND (16)
4414 #define HCF_INDICATOR   (32)
4415
4416 /* TOGGLEKEYS structure */
4417 #define TKF_AVAILABLE   (2)
4418 #define TKF_CONFIRMHOTKEY       (8)
4419 #define TKF_HOTKEYACTIVE        (4)
4420 #define TKF_HOTKEYSOUND (16)
4421 #define TKF_TOGGLEKEYSON        (1)
4422
4423 /* Installable Policy */
4424 #define PP_DISPLAYERRORS        (1)
4425
4426 /* SERVICE_INFO structure */
4427 #define RESOURCEDISPLAYTYPE_DOMAIN      (1)
4428 #define RESOURCEDISPLAYTYPE_FILE        (4)
4429 #define RESOURCEDISPLAYTYPE_GENERIC     (0)
4430 #define RESOURCEDISPLAYTYPE_GROUP       (5)
4431 #define RESOURCEDISPLAYTYPE_SERVER      (2)
4432 #define RESOURCEDISPLAYTYPE_SHARE       (3)
4433
4434 /* BITMAPINFOHEADER structure */
4435 #define BI_RGB  (0L)
4436 #define BI_RLE8 (1L)
4437 #define BI_RLE4 (2L)
4438 #define BI_BITFIELDS    (3L)
4439
4440 /* Extensions to OpenGL */
4441
4442 /* ChoosePixelFormat */
4443 #define PFD_DRAW_TO_WINDOW      (0x4)
4444 #define PFD_DRAW_TO_BITMAP      (0x8)
4445 #define PFD_SUPPORT_GDI (0x10)
4446 #define PFD_SUPPORT_OPENGL      (0x20)
4447 #define PFD_DOUBLEBUFFER        (0x1)
4448 #define PFD_STEREO      (0x2)
4449 #define PFD_DOUBLEBUFFER_DONTCARE       (0x40000000)
4450 #define PFD_STEREO_DONTCARE     (0x80000000)
4451 #define PFD_TYPE_RGBA   (0)
4452 #define PFD_TYPE_COLORINDEX     (1)
4453 #define PFD_MAIN_PLANE  (0)
4454 #define PFD_OVERLAY_PLANE       (1)
4455 #define PFD_UNDERLAY_PLANE      (-1)
4456
4457 /* wglUseFontOutlines */
4458 #define WGL_FONT_LINES  (0)
4459 #define WGL_FONT_POLYGONS       (1)
4460
4461 /* LAYERPLANEDESCRIPTOR structure */
4462
4463 /* PIXELFORMATDESCRIPTOR structure */
4464 #define PFD_GENERIC_FORMAT      (0x40)
4465 #define PFD_NEED_PALETTE        (0x80)
4466 #define PFD_NEED_SYSTEM_PALETTE (0x100)
4467 #define PFD_SWAP_COPY   (0x400)
4468 #define PFD_SWAP_EXCHANGE       (0x200)
4469
4470 /* TEXTMETRIC structure */
4471 #define TMPF_FIXED_PITCH        (0x1)
4472 #define TMPF_VECTOR             (0x2)
4473 #define TMPF_TRUETYPE           (0x4)
4474 #define TMPF_DEVICE             (0x8)
4475
4476 /* CopyFileEx options */
4477 #define COPY_FILE_FAIL_IF_EXISTS        (1)
4478
4479 /* CopyProgressRoutine callback */
4480 #define CALLBACK_CHUNK_FINISHED (0)
4481 #define CALLBACK_STREAM_SWITCH  (1)
4482
4483 #define PROGRESS_CONTINUE       (0)
4484 #define PROGRESS_CANCEL         (1)
4485 #define PROGRESS_STOP           (2)
4486 #define PROGRESS_QUIET          (3)
4487
4488 /* GetFileAttributes */
4489 #define INVALID_FILE_ATTRIBUTES ((DWORD)-1)
4490
4491 /* GetFileCompressedSize */
4492 #define INVALID_FILE_SIZE ((DWORD)-1)
4493
4494 /* --------------------- old stuff, need to organize! --------------- */
4495
4496 /* BEGINNING of windowsx.h stuff from old headers: */
4497 #define __CRACK_VOID_F(fn,args) (void)(fn args)
4498 #define __CRACK_BOOL_F(fn,args) (BOOL)(fn args)
4499 #define __CRACK_HMENU_F(fn,args) (HMENU)(fn args)
4500 #define __CRACK_HWND_F(fn,args) (HWND)(fn args)
4501 #define __CRACK_LONG_F(fn, args) (LRESULT)(fn args)
4502 #define __CRACK_ZERO_F(fn, args)  (fn args,0)
4503 #define GetFirstChild(h) GetTopWindow(h)
4504 #define GetNextSibling(h) GetWindow(h, GW_HWNDNEXT)
4505 #define GetWindowID(h) GetDlgCtrlID(h)
4506 #define SubclassWindow(h, p) (SetWindowLong(h, GWL_WNDPROC, p))
4507
4508 #define GET_WM_COMMAND_CMD(w, l)        HIWORD(w)
4509 #define GET_WM_COMMAND_ID(w, l)         LOWORD(w)
4510 #define GET_WM_CTLCOLOR_HDC(w, l, msg)  (HDC)(w)
4511 #define GET_WM_CTLCOLOR_HWND(w, l, msg) (HWND)(l)
4512 #define GET_WM_HSCROLL_CODE(w, l)       LOWORD(w)
4513 #define GET_WM_HSCROLL_HWND(w, l)       (HWND)(l)
4514 #define GET_WM_HSCROLL_POS(w, l)        HIWORD(w)
4515 #define GET_WM_MDIACTIVATE_FACTIVATE(h, a, b)    (b == (LONG)h)
4516 #define GET_WM_MDIACTIVATE_HWNDACTIVATE(a, b) (HWND)(b)
4517 #define GET_WM_MDIACTIVATE_HWNDDEACT(a, b)      (HWND)(a)
4518 #define GET_WM_VSCROLL_CODE(w, l)        LOWORD(w)
4519 #define GET_WM_VSCROLL_HWND(w, l)       (HWND)(l)
4520 #define GET_WM_VSCROLL_POS(w, l)        HIWORD(w)
4521
4522 #define FORWARD_WM_CLOSE(h, fn)                 __CRACK_VOID_F(fn,(h, WM_CLOSE, 0, 0))
4523 #define FORWARD_WM_COMMAND(h, id, c, n, fn)     __CRACK_VOID_F(fn,(h, WM_COMMAND, MAKEWPARAM(id,n), (LPARAM)c))
4524 #define FORWARD_WM_CREATE(h, p, fn)             __CRACK_BOOL_F(fn,(h, WM_CREATE, 0, (LPARAM)p))
4525 #define FORWARD_WM_DESTROY(h, fn)               __CRACK_VOID_F(fn,(h, WM_DESTROY, 0, 0))
4526 #define FORWARD_WM_ENABLE(h, e, fn)             __CRACK_VOID_F(fn,(h, WM_ENABLE, (WPARAM)e, 0))
4527 #define FORWARD_WM_INITDIALOG(h, c, l, fn)      __CRACK_BOOL_F(fn,(h, WM_INITDIALOG, (WPARAM)c, l))
4528 #define FORWARD_WM_MDICASCADE(h, c, fn)         __CRACK_BOOL_F(fn,(h, WM_MDICASCADE, (WPARAM)c, 0))
4529 #define FORWARD_WM_MDIDESTROY(h, d, fn)         __CRACK_VOID_F(fn,(h, WM_MDIDESTROY, (WPARAM)d, 0))
4530 #define FORWARD_WM_MDIGETACTIVE(h, fn)          __CRACK_HWND_F(fn,(h, WM_MDIGETACTIVE, 0, 0))
4531 #define FORWARD_WM_MDIICONARRANGE(h, fn)        __CRACK_VOID_F(fn,(h, WM_MDIICONARRANGE, 0, 0))
4532 #define FORWARD_WM_MDISETMENU(h, fr, hf, hw, fn) __CRACK_HMENU_F(fn,(h, WM_MDISETMENU, (WPARAM)((fr) ? (hf) : 0), (LPARAM)(hw)))
4533 #define FORWARD_WM_MDITILE(h, c, fn)            __CRACK_BOOL_F(fn,(h, WM_MDITILE, (WPARAM)(c), 0))
4534 #define FORWARD_WM_PAINT(h, fn)                 __CRACK_VOID_F(fn,(h, WM_PAINT, 0, 0))
4535 #define FORWARD_WM_QUERYENDSESSION(h, fn)       __CRACK_BOOL_F(fn,(h, WM_QUERYENDSESSION, 0, 0))
4536 #define FORWARD_WM_SIZE(h, state, cx, cy, fn)   __CRACK_VOID_F(fn,(h, WM_SIZE, (WPARAM)state, MAKELPARAM(cx, cy)))
4537 #define FORWARD_WM_SYSCOMMAND(h, c, x, y, fn)   __CRACK_VOID_F(fn,(h, WM_SYSCOMMAND, (WPARAM)c, MAKELPARAM(x, y)))
4538
4539 #define HANDLE_WM_CLOSE(h, w, l, fn)            __CRACK_ZERO_F(fn,(h));
4540 #define HANDLE_WM_COMMAND(h, w, l, fn)          __CRACK_ZERO_F(fn,(h, SEXT_LOWORD(w), (HWND)l, HIWORD(w)))
4541 #define HANDLE_WM_CREATE(h, w, l, fn)           (LRESULT)((fn(h, (CREATESTRUCT *)l)) ? 0 : -1)
4542 #define HANDLE_WM_DESTROY(h, w, l, fn)          __CRACK_ZERO_F(fn,(h))
4543 #define HANDLE_WM_ENABLE(h, w, l, fn)           __CRACK_ZERO_F(fn,(h, (BOOL)w))
4544 #define HANDLE_WM_INITDIALOG(h, w, l, fn)       __CRACK_LONG_F(fn,(h, (HWND)w, l))
4545 #define HANDLE_WM_MDICASCADE(h, w, l, fn)       __CRACK_LONG_F(fn, (h, (UINT)w)
4546 #define HANDLE_WM_MDIDESTROY(h, w, l, fn)       __CRACK_ZERO_F(fn,(h, (HWND)w))
4547 #define HANDLE_WM_MDIGETACTIVE(h, w, l, fn)     __CRACK_LONG_F(fn,(h))
4548 #define HANDLE_WM_MDIICONARRANGE(h, w, l, fn)   __CRACK_ZERO_F(fn,(h))
4549 #define HANDLE_WM_MDISETMENU(h, w, l, fn)       __CRACK_LONG_F(fn,(h, (BOOL)w, (HMENU)w, (HMENU)l)
4550 #define HANDLE_WM_MDITILE(h, w, l, fn)          __CRACK_LONG_F(fn,(h, (UINT)w))
4551 #define HANDLE_WM_PAINT(h, w, l, fn)            __CRACK_ZERO_F(fn,(h))
4552 #define HANDLE_WM_QUERYENDSESSION(h, w, l, fn)  MAKELRESULT(fn(h), 0)
4553 #define HANDLE_WM_SIZE(h, w, l, fn)             __CRACK_ZERO_F(fn,(h, (UINT)w, SEXT_LOWORD(l), SEXT_HIWORD(l)))
4554 #define HANDLE_WM_SYSCOMMAND(h, w, l, fn)       __CRACK_ZERO_F(fn,(h, (UINT)w, SEXT_LOWORD(l), SEXT_HIWORD(l)))
4555
4556 /* Totally disgusting! get wParam and lParam from the environment ! */
4557 #define HANDLE_MSG(h, message, fn) case message: return HANDLE_##message(h, wParam, lParam, fn)
4558
4559 /* END OF windowsx.h stuff from old headers */
4560 /* ------------------------------------------------------------------ */
4561 /* BEGINNING of shellapi.h stuff from old headers */
4562
4563 #define SE_ERR_SHARE                    26
4564 #define SE_ERR_ASSOCINCOMPLETE          27
4565 #define SE_ERR_DDETIMEOUT               28
4566 #define SE_ERR_DDEFAIL                  29
4567 #define SE_ERR_DDEBUSY                  30
4568 #define SE_ERR_NOASSOC                  31
4569
4570 /* END OF shellapi.h stuff from old headers */
4571 /* ------------------------------------------------------------------ */
4572 /* From ddeml.h in old Cygnus headers */
4573
4574 #define XCLASS_BOOL             0x1000
4575 #define XCLASS_DATA             0x2000
4576 #define XCLASS_FLAGS            0x4000
4577 #define XCLASS_MASK             0xfc00
4578 #define XCLASS_NOTIFICATION     0x8000
4579 #define XTYPF_NOBLOCK           0x0002
4580 #define XTYP_ADVDATA            0x4010
4581 #define XTYP_ADVREQ             0x2022
4582 #define XTYP_ADVSTART           0x1030
4583 #define XTYP_ADVSTOP            0x8040
4584 #define XTYP_CONNECT            0x1062
4585 #define XTYP_CONNECT_CONFIRM    0x8072
4586 #define XTYP_DISCONNECT         0x80c2
4587 #define XTYP_EXECUTE            0x4050
4588 #define XTYP_POKE               0x4090
4589 #define XTYP_REQUEST            0x20b0
4590 #define XTYP_WILDCONNECT        0x20E2
4591 #define XTYP_REGISTER           0x80A2
4592 #define XTYP_ERROR              0x8002
4593 #define XTYP_XACT_COMPLETE      0x8080
4594 #define XTYP_UNREGISTER         0x80D2
4595
4596 #define DMLERR_DLL_USAGE        0x4004
4597 #define DMLERR_INVALIDPARAMETER 0x4006
4598 #define DMLERR_NOTPROCESSED     0x4009
4599 #define DMLERR_POSTMSG_FAILED   0x400c
4600 #define DMLERR_SERVER_DIED      0x400e
4601 #define DMLERR_SYS_ERROR        0x400f
4602 #define DMLERR_BUSY             0x4001
4603 #define DMLERR_DATAACKTIMEOUT   0x4002
4604 #define DMLERR_ADVACKTIMEOUT    0x4000
4605 #define DMLERR_DLL_NOT_INITIALIZED  0x4003
4606 #define DMLERR_LOW_MEMORY       0x4007
4607 #define DMLERR_MEMORY_ERROR     0x4008
4608 #define DMLERR_POKEACKTIMEOUT   0x400b
4609 #define DMLERR_NO_CONV_ESTABLISHED  0x400a
4610 #define DMLERR_REENTRANCY       0x400d
4611 #define DMLERR_UNFOUND_QUEUE_ID 0x4011
4612 #define DMLERR_UNADVACKTIMEOUT  0x4010
4613 #define DMLERR_EXECACKTIMEOUT   0x4005
4614 #define DDE_FACK                0x8000
4615 #define DDE_FNOTPROCESSED       0x0000
4616
4617 #define DNS_REGISTER 0x0001
4618 #define DNS_UNREGISTER 0x0002
4619 #define CP_WINANSI 1004
4620 #define CP_WINUNICODE 1200
4621 #define EXPENTRY CALLBACK
4622 #define APPCLASS_STANDARD  0x00000000
4623
4624 /* End of stuff from ddeml.h in old Cygnus headers */
4625 /* ----------------------------------------------- */
4626
4627 #define BKMODE_LAST     (2)
4628
4629 #define CTLCOLOR_MSGBOX         (0)
4630 #define CTLCOLOR_EDIT           (1)
4631 #define CTLCOLOR_LISTBOX        (2)
4632 #define CTLCOLOR_BTN            (3)
4633 #define CTLCOLOR_DLG            (4)
4634 #define CTLCOLOR_SCROLLBAR      (5)
4635 #define CTLCOLOR_STATIC         (6)
4636 #define CTLCOLOR_MAX            (7)
4637
4638 #define META_SETMAPMODE         (0x0103L)
4639 #define META_SETWINDOWORG       (0x020BL)
4640 #define META_SETWINDOWEXT       (0x020CL)
4641
4642 #define POLYFILL_LAST           (2)
4643
4644
4645 #define EXCEPTION_CTRL_C
4646
4647 #define PROCESSOR_ARCHITECTURE_INTEL 0
4648 #define PROCESSOR_ARCHITECTURE_MIPS  1
4649 #define PROCESSOR_ARCHITECTURE_ALPHA 2
4650 #define PROCESSOR_ARCHITECTURE_PPC   3
4651
4652 #define FreeModule(h) FreeLibrary(h)
4653 #define MakeProcInstance(p,i) (p)
4654 #define FreeProcInstance(p) (p)
4655
4656 #define _fmemcpy memcpy
4657
4658 /* Used by wxwindows. */
4659 #define SIZEFULLSCREEN  SIZE_MAXIMIZED
4660 #define SIZENORMAL      SIZE_RESTORED
4661 #define SIZEICONIC      SIZE_MINIMIZED
4662 #define NPLOGPALETTE    PLOGPALETTE
4663
4664 /* In the old winnt.h */
4665 #if 0
4666 #ifdef __ANAL__
4667 #define DECLARE_HANDLE(h) struct h##__ { int dummy; }; typedef struct h##__ *h
4668 #else
4669 #define DECLARE_HANDLE(h)  typedef void *h
4670 #endif
4671 DECLARE_HANDLE(HANDLE);
4672 #endif
4673
4674 #ifdef __PPC__
4675 #define CONTEXT_CONTROL         1L
4676 #define CONTEXT_FLOATING_POINT  2L
4677 #define CONTEXT_INTEGER         4L
4678 #define CONTEXT_DEBUG_REGISTERS 8L
4679
4680 #define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_FLOATING_POINT | CONTEXT_INTEGER)
4681 #define CONTEXT_DEBUGGER (CONTEXT_FULL)
4682
4683 #else /* x86 */
4684 /* The doc refered me to winnt.h, so I had to look... */
4685 #define SIZE_OF_80387_REGISTERS      80
4686
4687 /* Values for contextflags */
4688 #define CONTEXT_i386    0x10000
4689 #define CONTEXT_CONTROL         (CONTEXT_i386 | 1)      
4690 #define CONTEXT_INTEGER         (CONTEXT_i386 | 2)      
4691 #define CONTEXT_SEGMENTS        (CONTEXT_i386 | 4)      
4692 #define CONTEXT_FLOATING_POINT  (CONTEXT_i386 | 8)      
4693 #define CONTEXT_DEBUG_REGISTERS (CONTEXT_i386 | 0x10)
4694 #define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_INTEGER | CONTEXT_SEGMENTS)
4695
4696 /* our own invention */
4697 #define FLAG_TRACE_BIT 0x100
4698 #define CONTEXT_DEBUGGER (CONTEXT_FULL | CONTEXT_FLOATING_POINT)
4699
4700 #endif
4701
4702 #define ASCIICHAR AsciiChar
4703 #define FAR
4704
4705 #define FILTER_TEMP_DUPLICATE_ACCOUNT       (0x0001)
4706 #define FILTER_NORMAL_ACCOUNT               (0x0002)
4707 #define FILTER_INTERDOMAIN_TRUST_ACCOUNT    (0x0008)
4708 #define FILTER_WORKSTATION_TRUST_ACCOUNT    (0x0010)
4709 #define FILTER_SERVER_TRUST_ACCOUNT         (0x0020)
4710
4711 #define LOGON32_LOGON_INTERACTIVE           (0x02)
4712 #define LOGON32_LOGON_BATCH                 (0x04)
4713 #define LOGON32_LOGON_SERVICE               (0x05)
4714 #define LOGON32_PROVIDER_DEFAULT            (0x00)
4715 #define LOGON32_PROVIDER_WINNT35            (0x01)
4716
4717 #define QID_SYNC 0xFFFFFFFF
4718
4719
4720 /* To mark direction in formal parameters list */
4721
4722 #ifndef IN
4723 #define IN
4724 #endif
4725 #ifndef OUT
4726 #define OUT
4727 #endif
4728 #ifndef OPTIONAL
4729 #define OPTIONAL
4730 #endif
4731
4732
4733 #ifndef __USE_W32API
4734
4735
4736 typedef enum _SC_STATUS_TYPE {
4737   SC_STATUS_PROCESS_INFO = 0
4738 } SC_STATUS_TYPE;
4739
4740 typedef enum _SC_ENUM_TYPE {
4741   SC_ENUM_PROCESS_INFO = 0
4742 } SC_ENUM_TYPE;
4743
4744 #endif /* !__USE_W32API */
4745
4746 typedef enum _SystemState {
4747   STATE_SYSTEM_UNAVAILABLE        = 0x00000001, // Disabled
4748   STATE_SYSTEM_SELECTED           = 0x00000002,
4749   STATE_SYSTEM_FOCUSED            = 0x00000004,
4750   STATE_SYSTEM_PRESSED            = 0x00000008,
4751   STATE_SYSTEM_CHECKED            = 0x00000010,
4752   STATE_SYSTEM_MIXED              = 0x00000020, // 3-state checkbox or toolbar button
4753   STATE_SYSTEM_READONLY           = 0x00000040,
4754   STATE_SYSTEM_HOTTRACKED         = 0x00000080,
4755   STATE_SYSTEM_DEFAULT            = 0x00000100,
4756   STATE_SYSTEM_EXPANDED           = 0x00000200,
4757   STATE_SYSTEM_COLLAPSED          = 0x00000400,
4758   STATE_SYSTEM_BUSY               = 0x00000800,
4759   STATE_SYSTEM_FLOATING           = 0x00001000, // Children "owned" not "contained" by parent
4760   STATE_SYSTEM_MARQUEED           = 0x00002000,
4761   STATE_SYSTEM_ANIMATED           = 0x00004000,
4762   STATE_SYSTEM_INVISIBLE          = 0x00008000,
4763   STATE_SYSTEM_OFFSCREEN          = 0x00010000,
4764   STATE_SYSTEM_SIZEABLE           = 0x00020000,
4765   STATE_SYSTEM_MOVEABLE           = 0x00040000,
4766   STATE_SYSTEM_SELFVOICING        = 0x00080000,
4767   STATE_SYSTEM_FOCUSABLE          = 0x00100000,
4768   STATE_SYSTEM_SELECTABLE         = 0x00200000,
4769   STATE_SYSTEM_LINKED             = 0x00400000,
4770   STATE_SYSTEM_TRAVERSED          = 0x00800000,
4771   STATE_SYSTEM_MULTISELECTABLE    = 0x01000000,  // Supports multiple selection
4772   STATE_SYSTEM_EXTSELECTABLE      = 0x02000000,  // Supports extended selection
4773   STATE_SYSTEM_ALERT_LOW          = 0x04000000,  // This information is of low priority
4774   STATE_SYSTEM_ALERT_MEDIUM       = 0x08000000,  // This information is of medium priority
4775   STATE_SYSTEM_ALERT_HIGH         = 0x10000000,  // This information is of high priority
4776   STATE_SYSTEM_VALID              = 0x1FFFFFFF
4777 } SystemState;
4778
4779 /*
4780  * From OS/2 2.0 exception handling
4781  * Win32 seems to use the same flags as ExceptionFlags in an EXCEPTION_RECORD
4782  */
4783
4784 #define EH_NONCONTINUABLE   0x01
4785 #define EH_UNWINDING        0x02
4786 #define EH_EXIT_UNWIND      0x04
4787 #define EH_STACK_INVALID    0x08
4788 #define EH_NESTED_CALL      0x10
4789
4790 #ifdef __cplusplus
4791 }
4792 #endif /* __cplusplus */
4793
4794 #endif /* WIN32_LEAN_AND_MEAN */
4795
4796 #endif /* _GNU_H_WINDOWS32_DEFINES */