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