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