1 module tango.sys.win32.Types;
2 
3 /*
4  Module:  Windows Types
5  Author:  Trevor Parscal, Frank Benoit
6 */
7 
8 /+ Aliases, Types, and Constants +/
9 enum NULL = null;
10 alias int SCODE;
11 alias void VOID;
12 alias void* POINTER;
13 alias ushort ATOM;
14 alias int WINBOOL;
15 alias WINBOOL BOOL;
16 alias uint CALTYPE;
17 alias uint CALID;
18 alias char CCHAR;
19 alias char* PCHAR;
20 alias uint COLORREF;
21 alias uint TCOLORREF;
22 alias char CHAR;
23 alias ubyte BYTE;
24 alias short INT16;
25 alias ushort UINT16;
26 alias short SHORT;
27 alias int INT;
28 alias int WINT;
29 alias int LONG;
30 alias ushort WORD;
31 alias uint DWORD;
32 version (Win64)
33 {
34 alias long  INT_PTR;
35 alias ulong UINT_PTR;
36 alias long  LONG_PTR;
37 alias ulong ULONG_PTR;
38 }
39 else
40 {
41 alias int  INT_PTR;
42 alias uint UINT_PTR;
43 alias int  LONG_PTR;
44 alias uint ULONG_PTR;
45 }
46 alias ULONG_PTR DWORD_PTR;
47 alias uint PROPID;
48 const BOOL FALSE = 0;
49 const BOOL TRUE = -1;
50 alias char* PANSICHAR;
51 alias wchar* PWIDECHAR;
52 alias int* PINTEGER;
53 alias long LONGLONG;
54 alias LONGLONG* PLONGLONG;
55 alias ulong DWORDLONG;
56 alias DWORDLONG* PDWORDLONG;
57 alias float FLOAT;
58 alias void* HANDLE;
59 alias HANDLE HACCEL;
60 alias HANDLE HBITMAP;
61 alias HANDLE HBRUSH;
62 alias HANDLE HCOLORSPACE;
63 alias HANDLE HCONV;
64 alias HANDLE HCONVLIST;
65 alias HANDLE HCURSOR;
66 alias HANDLE HDBC;
67 alias HANDLE HDC;
68 alias HANDLE HDDEDATA;
69 alias HANDLE HDESK;
70 alias HANDLE HDROP;
71 alias HANDLE HDWP;
72 alias HANDLE HENHMETAFILE;
73 alias HANDLE HENV;
74 alias HANDLE HFILE;
75 alias HANDLE HFONT;
76 alias HANDLE HGDIOBJ;
77 alias HANDLE HGLOBAL;
78 alias HANDLE HGLRC;
79 alias HANDLE HHOOK;
80 alias HANDLE HICON;
81 alias HANDLE HIMAGELIST;
82 alias HANDLE HINST;
83 alias HINST HINSTANCE;
84 alias HANDLE HKEY;
85 alias HANDLE HKL;
86 alias HANDLE HLOCAL;
87 alias HANDLE HMENU;
88 alias HANDLE HMETAFILE;
89 alias HANDLE HMODULE;
90 alias HANDLE HPALETTE;
91 alias HANDLE HPEN;
92 alias HANDLE HRASCONN;
93 alias int HRESULT;
94 alias HANDLE HRGN;
95 alias HANDLE HRSRC;
96 alias HANDLE HSTMT;
97 alias HANDLE HSZ;
98 alias HANDLE HWINSTA;
99 alias HANDLE HWND;
100 alias ushort LANGID;
101 alias DWORD LCID;
102 alias DWORD LCTYPE;
103 alias int LPARAM;
104 alias ushort* LP;
105 alias WINBOOL* LPBOOL;
106 alias ubyte* LPBYTE;
107 alias PCHAR LPCCH;
108 alias PCHAR LPCH;
109 alias COLORREF* LPCOLORREF;
110 alias const(CHAR)* LPCSTR;
111 alias const(TCHAR)* LPCTSTR;
112 alias const(wchar)* LPCWCH;
113 alias const(wchar)* LPCWSTR;
114 alias DWORD* LPDWORD;
115 alias HANDLE* LPHANDLE;
116 alias int* LPINT;
117 alias int* LPLONG;
118 alias PCHAR LPSTR;
119 alias PCHAR LPTCH;
120 alias TCHAR* LPTSTR;
121 alias int LRESULT;
122 alias POINTER LPVOID;
123 alias const(POINTER) LPCVOID;
124 alias wchar* LPWCH;
125 alias wchar* LPWORD;
126 alias wchar* LPWSTR;
127 alias wchar* NWPSTR;
128 alias WINBOOL* PWINBOOL;
129 alias ubyte BOOLEAN;
130 alias ubyte* PBOOLEAN;
131 alias ubyte* PBYTE;
132 alias PCHAR PCCH;
133 alias PCHAR PCH;
134 alias const(CHAR)* PCSTR;
135 alias const(wchar)* PCWCH;
136 alias const(wchar)* PCWSTR;
137 alias DWORD* PDWORD;
138 alias float* PFLOAT;
139 alias HANDLE* PHANDLE;
140 alias HKEY* PHKEY;
141 alias int* PINT;
142 alias int* PLONG;
143 alias int* PSHORT;
144 alias PCHAR PSTR;
145 alias PCHAR PSZ;
146 alias ubyte* PTBYTE;
147 alias PCHAR PTCH;
148 alias PCHAR PTCHAR;
149 alias PCHAR PTSTR;
150 alias ubyte* PUCHAR;
151 alias wchar* PWCH;
152 alias wchar* PWCHAR;
153 alias ushort* PWORD;
154 alias uint* PUINT;
155 alias uint* PULONG;
156 alias ushort* PUSHORT;
157 alias POINTER PVOID;
158 // NOTE: This is defined in sqltypes.  Probably shouldn't be here.  Commenting for now.
159 //alias int RETCODE;
160 alias HANDLE SC_HANDLE;
161 alias LPVOID SC_LOCK;
162 alias SC_HANDLE* LPSC_HANDLE;
163 alias DWORD SERVICE_STATUS_HANDLE;
164 alias ubyte TBYTE;
165 
166 version(Win32SansUnicode){
167  // Strictly speaking this should be ubyte since char is UTF-8, but that
168  // fills code with so many casts that it's just not sensible.
169  // (See also DMD Issue 2193.)
170  alias  char TCHAR;
171 }else{
172  alias wchar TCHAR;
173 }
174 
175 alias ubyte BCHAR;
176 alias ubyte UCHAR;
177 alias wchar WCHAR;
178 alias uint UINT;
179 alias uint ULONG;
180 alias ushort USHORT;
181 alias uint WPARAM;
182 alias int ACL_INFORMATION_CLASS;
183 
184 alias GUID IID;
185 alias IID* REFIID;
186 
187 // Cast a string literal to a ubyte*=PCHAR
188 template _PCHAR( const(char)[] a ){
189  const PCHAR _PCHAR = cast(PCHAR)a.ptr;
190 }
191 
192 enum { AclRevisionInformation = 1, AclSizeInformation,  };
193 alias ACL_INFORMATION_CLASS _ACL_INFORMATION_CLASS;
194 alias int MEDIA_TYPE;
195 enum { Unknown, F5_1Pt2_512, F3_1Pt44_512, F3_2Pt88_512, F3_20Pt8_512, F3_720_512, F5_360_512, F5_320_512, F5_320_1024, F5_180_512, F5_160_512, RemovableMedia, FixedMedia,  };
196 alias MEDIA_TYPE _MEDIA_TYPE;
197 const int RASCS_DONE = (0x2000);
198 const int RASCS_PAUSED = (0x1000);
199 alias int RASCONNSTATE;
200 enum { RASCS_OpenPort = 0, RASCS_PortOpened, RASCS_ConnectDevice, RASCS_DeviceConnected, RASCS_AllDevicesConnected, RASCS_Authenticate, RASCS_AuthNotify, RASCS_AuthRetry, RASCS_AuthCallback, RASCS_AuthChangePassword, RASCS_AuthProject, RASCS_AuthLinkSpeed, RASCS_AuthAck, RASCS_ReAuthenticate, RASCS_Authenticated, RASCS_PrepareForCallback, RASCS_WaitForModemReset, RASCS_WaitForCallback, RASCS_Projected, RASCS_StartAuthentication, RASCS_CallbackComplete, RASCS_LogonNetwork, RASCS_Interactive = RASCS_PAUSED, RASCS_RetryAuthentication, RASCS_CallbackSetByCaller, RASCS_PasswordExpired, RASCS_Connected = RASCS_DONE, RASCS_Disconnected,  };
201 alias RASCONNSTATE _RASCONNSTATE;
202 alias int RASPROJECTION;
203 enum { RASP_Amb = 0x10000, RASP_PppNbf = 0x803F, RASP_PppIpx = 0x802B, RASP_PppIp = 0x8021,  };
204 alias RASPROJECTION _RASPROJECTION;
205 alias int SECURITY_IMPERSONATION_LEVEL;
206 enum { SecurityAnonymous, SecurityIdentification, SecurityImpersonation, SecurityDelegation,  };
207 alias SECURITY_IMPERSONATION_LEVEL _SECURITY_IMPERSONATION_LEVEL;
208 alias int SID_NAME_USE;
209 enum { SidTypeUser = 1, SidTypeGroup, SidTypeDomain, SidTypeAlias, SidTypeWellKnownGroup, SidTypeDeletedAccount, SidTypeInvalid, SidTypeUnknown,  };
210 alias SID_NAME_USE* PSID_NAME_USE;
211 alias SID_NAME_USE _SID_NAME_USE;
212 alias int TOKEN_INFORMATION_CLASS;
213 enum { TokenUser = 1, TokenGroups, TokenPrivileges, TokenOwner, TokenPrimaryGroup, TokenDefaultDacl, TokenSource, TokenType, TokenImpersonationLevel, TokenStatistics,  };
214 alias TOKEN_INFORMATION_CLASS _TOKEN_INFORMATION_CLASS;
215 alias int TOKEN_TYPE;
216 enum { TokenPrimary = 1, TokenImpersonation,  };
217 alias TOKEN_TYPE TAGTOKEN_TYPE;
218 
219 extern(Windows){
220 alias int function(HWND, UINT, LPARAM, LPARAM) BFFCALLBACK;
221 alias UINT function(HWND, UINT, WPARAM, LPARAM) LPCCHOOKPROC;
222 alias UINT function(HWND, UINT, WPARAM, LPARAM) LPCFHOOKPROC;
223 alias POINTER PTHREAD_START_ROUTINE;
224 alias PTHREAD_START_ROUTINE LPTHREAD_START_ROUTINE;
225 alias DWORD function(DWORD, LPBYTE, LONG, LONG) EDITSTREAMCALLBACK;
226 alias UINT function(HWND, UINT, WPARAM, LPARAM) LPFRHOOKPROC;
227 alias UINT function(HWND, UINT, WPARAM, LPARAM) LPOFNHOOKPROC;
228 alias UINT function(HWND, UINT, WPARAM, LPARAM) LPPRINTHOOKPROC;
229 alias UINT function(HWND, UINT, WPARAM, LPARAM) LPSETUPHOOKPROC;
230 alias LRESULT function(HWND, UINT, WPARAM, LPARAM) DLGPROC;
231 alias int function(HWND, UINT, LPARAM) PFNPROPSHEETCALLBACK;
232 alias void function(DWORD, LPTSTR) LPSERVICE_MAIN_FUNCTION;
233 alias int function(LPARAM, LPARAM, LPARAM) PFNTVCOMPARE;
234 alias LRESULT function(HWND, UINT, WPARAM, LPARAM) WNDPROC;
235 alias POINTER FARPROC;
236 alias FARPROC PROC;
237 alias WINBOOL function(HANDLE, LPTSTR, LONG) ENUMRESTYPEPROC;
238 alias WINBOOL function(HANDLE, LPCTSTR, LPTSTR, LONG) ENUMRESNAMEPROC;
239 alias WINBOOL function(HANDLE, LPCTSTR, LPCTSTR, ushort, LONG) ENUMRESLANGPROC;
240 alias FARPROC DESKTOPENUMPROC;
241 alias WINBOOL function(HWND, LPARAM) ENUMWINDOWSPROC;
242 alias WINBOOL function(LPTSTR, LPARAM) ENUMWINDOWSTATIONPROC;
243 alias void function(HWND, UINT, DWORD) SENDASYNCPROC;
244 alias void function(HWND, UINT, UINT, DWORD) TIMERPROC;
245 alias BOOL function(HMONITOR, HDC, RECT*, LPARAM) MONITORENUMPROC;
246 alias FARPROC GRAYSTRINGPROC;
247 alias WINBOOL function(HDC, LPARAM, WPARAM, int, int) DRAWSTATEPROC;
248 alias WINBOOL function(HWND, LPCTSTR, HANDLE, DWORD) PROPENUMPROCEX;
249 alias WINBOOL function(HWND, LPCTSTR, HANDLE) PROPENUMPROC;
250 alias LRESULT function(int, WPARAM, LPARAM) HOOKPROC;
251 alias void function(LPVOID) ENUMOBJECTSPROC;
252 alias void function(int, int) LINEDDAPROC;
253 alias WINBOOL function(HDC, int) TABORTPROC;
254 alias UINT function(HWND, UINT, WPARAM, LPARAM) LPPAGEPAINTHOOK;
255 alias UINT function(HWND, UINT, WPARAM, LPARAM) LPPAGESETUPHOOK;
256 alias int function(LPTSTR, LPARAM) ICMENUMPROC;
257 alias LONG function(PCHAR, LONG, ubyte, INT) EDITWORDBREAKPROCEX;
258 alias int function(LPARAM, LPARAM, LPARAM) PFNLVCOMPARE;
259 alias WINBOOL function(LPTSTR) LOCALE_ENUMPROC;
260 alias WINBOOL function(LPTSTR) CODEPAGE_ENUMPROC;
261 alias WINBOOL function(LPTSTR) DATEFMT_ENUMPROC;
262 alias WINBOOL function(LPTSTR) TIMEFMT_ENUMPROC;
263 alias WINBOOL function(LPTSTR) CALINFO_ENUMPROC;
264 alias WINBOOL function(DWORD) PHANDLER_ROUTINE;
265 alias WINBOOL function(DWORD) LPHANDLER_FUNCTION;
266 alias void function(LPVOID, DWORD, DWORD) PTIMERAPCROUTINE;
267 alias UINT function(LPCTSTR, LPSTR, UINT) PFNGETPROFILEPATH;
268 alias UINT function(LPCTSTR, LPCTSTR, DWORD) PFNRECONCILEPROFILE;
269 alias WINBOOL function(HWND, LPCTSTR, LPCTSTR, LPCTSTR, DWORD) PFNPROCESSPOLICIES;
270 }
271 
272 const 
273 {
274  LPCTSTR SE_CREATE_TOKEN_NAME = ("SeCreateTokenPrivilege");
275  LPCTSTR SE_ASSIGNPRIMARYTOKEN_NAME = ("SeAssignPrimaryTokenPrivilege");
276  LPCTSTR SE_LOCK_MEMORY_NAME = ("SeLockMemoryPrivilege");
277  LPCTSTR SE_INCREASE_QUOTA_NAME = ("SeIncreaseQuotaPrivilege");
278  LPCTSTR SE_UNSOLICITED_INPUT_NAME = ("SeUnsolicitedInputPrivilege");
279  LPCTSTR SE_MACHINE_ACCOUNT_NAME = ("SeMachineAccountPrivilege");
280  LPCTSTR SE_TCB_NAME = ("SeTcbPrivilege");
281  LPCTSTR SE_SECURITY_NAME = ("SeSecurityPrivilege");
282  LPCTSTR SE_TAKE_OWNERSHIP_NAME = ("SeTakeOwnershipPrivilege");
283  LPCTSTR SE_LOAD_DRIVER_NAME = ("SeLoadDriverPrivilege");
284  LPCTSTR SE_SYSTEM_PROFILE_NAME = ("SeSystemProfilePrivilege");
285  LPCTSTR SE_SYSTEMTIME_NAME = ("SeSystemtimePrivilege");
286  LPCTSTR SE_PROF_SINGLE_PROCESS_NAME = ("SeProfileSingleProcessPrivilege");
287  LPCTSTR SE_INC_BASE_PRIORITY_NAME = ("SeIncreaseBasePriorityPrivilege");
288  LPCTSTR SE_CREATE_PAGEFILE_NAME = ("SeCreatePagefilePrivilege");
289  LPCTSTR SE_CREATE_PERMANENT_NAME = ("SeCreatePermanentPrivilege");
290  LPCTSTR SE_BACKUP_NAME = ("SeBackupPrivilege");
291  LPCTSTR SE_RESTORE_NAME = ("SeRestorePrivilege");
292  LPCTSTR SE_SHUTDOWN_NAME = ("SeShutdownPrivilege");
293  LPCTSTR SE_DEBUG_NAME = ("SeDebugPrivilege");
294  LPCTSTR SE_AUDIT_NAME = ("SeAuditPrivilege");
295  LPCTSTR SE_SYSTEM_ENVIRONMENT_NAME = ("SeSystemEnvironmentPrivilege");
296  LPCTSTR SE_CHANGE_NOTIFY_NAME = ("SeChangeNotifyPrivilege");
297  LPCTSTR SE_REMOTE_SHUTDOWN_NAME = ("SeRemoteShutdownPrivilege");
298 
299  LPCSTR  SERVICES_ACTIVE_DATABASEA = _PCHAR!("ServicesActive");
300  LPCWSTR SERVICES_ACTIVE_DATABASEW = ("ServicesActive");
301  LPCSTR  SERVICES_FAILED_DATABASEA = _PCHAR!("ServicesFailed");
302  LPCWSTR SERVICES_FAILED_DATABASEW = ("ServicesFailed");
303  LPCSTR  SC_GROUP_IDENTIFIERA = _PCHAR!("+");
304  LPCWSTR SC_GROUP_IDENTIFIERW = ("+");
305  version(Win32SansUnicode){
306   alias SERVICES_ACTIVE_DATABASEA SERVICES_ACTIVE_DATABASE;
307   alias SERVICES_FAILED_DATABASEA SERVICES_FAILED_DATABASE;
308   alias SC_GROUP_IDENTIFIERA SC_GROUP_IDENTIFIER;
309  }
310  else{
311   alias SERVICES_ACTIVE_DATABASEW SERVICES_ACTIVE_DATABASE;
312   alias SERVICES_FAILED_DATABASEW SERVICES_FAILED_DATABASE;
313   alias SC_GROUP_IDENTIFIERW SC_GROUP_IDENTIFIER;
314  }
315 }
316 
317 extern(Windows){
318 alias HDDEDATA function(UINT, UINT, HCONV, HSZ, HSZ, HDDEDATA, DWORD, DWORD) PFNCALLBACK;
319 }
320 alias PFNCALLBACK CALLB;
321 alias WINBOOL SECURITY___FILE___TRACKING_MODE;
322 alias FARPROC WNDENUMPROC;
323 alias FARPROC ENHMFENUMPROC;
324 alias DWORD CCSTYLE;
325 alias CCSTYLE* PCCSTYLE;
326 alias CCSTYLE* LPCCSTYLE;
327 alias DWORD CCSTYLEFLAGA;
328 alias CCSTYLEFLAGA* PCCSTYLEFLAGA;
329 alias CCSTYLEFLAGA* LPCCSTYLEFLAGA;
330 
331 const HANDLE INVALID_HANDLE_VALUE = cast(HANDLE) -1;
332 
333 
334 enum : DWORD 
335 {
336  SM_XVIRTUALSCREEN = (76),
337  SM_YVIRTUALSCREEN = (77),
338  SM_CXVIRTUALSCREEN = (78),
339  SM_CYVIRTUALSCREEN = (79),
340  MONITORINFOF_PRIMARY = (1),
341  LZERROR_UNKNOWNALG = -((8)),
342  LZERROR_BADVALUE = -((7)),
343  LZERROR_GLOBLOCK = -((6)),
344  LZERROR_GLOBALLOC = -((5)),
345  LZERROR_WRITE = -((4)),
346  LZERROR_READ = -((3)),
347  LZERROR_BADOUTHANDLE = -((2)),
348  LZERROR_BADINHANDLE = -((1)),
349  NO_ERROR = (0),
350  ERROR_SUCCESS = (0),
351  ERROR_INVALID_FUNCTION = (1),
352  ERROR_FILE_NOT_FOUND = (2),
353  ERROR_PATH_NOT_FOUND = (3),
354  ERROR_TOO_MANY_OPEN_FILES = (4),
355  ERROR_ACCESS_DENIED = (5),
356  ERROR_INVALID_HANDLE = (6),
357  ERROR_ARENA_TRASHED = (7),
358  ERROR_NOT_ENOUGH_MEMORY = (8),
359  ERROR_INVALID_BLOCK = (9),
360  ERROR_BAD_ENVIRONMENT = (10),
361  ERROR_BAD_FORMAT = (11),
362  ERROR_INVALID_ACCESS = (12),
363  ERROR_INVALID_DATA = (13),
364  ERROR_OUTOFMEMORY = (14),
365  ERROR_INVALID_DRIVE = (15),
366  ERROR_CURRENT_DIRECTORY = (16),
367  ERROR_NOT_SAME_DEVICE = (17),
368  ERROR_NO_MORE_FILES = (18),
369  ERROR_WRITE_PROTECT = (19),
370  ERROR_BAD_UNIT = (20),
371  ERROR_NOT_READY = (21),
372  ERROR_BAD_COMMAND = (22),
373  ERROR_CRC = (23),
374  ERROR_BAD_LENGTH = (24),
375  ERROR_SEEK = (25),
376  ERROR_NOT_DOS_DISK = (26),
377  ERROR_SECTOR_NOT_FOUND = (27),
378  ERROR_OUT_OF_PAPER = (28),
379  ERROR_WRITE_FAULT = (29),
380  ERROR_READ_FAULT = (30),
381  ERROR_GEN_FAILURE = (31),
382  ERROR_SHARING_VIOLATION = (32),
383  ERROR_LOCK_VIOLATION = (33),
384  ERROR_WRONG_DISK = (34),
385  ERROR_SHARING_BUFFER_EXCEEDED = (36),
386  ERROR_HANDLE_EOF = (38),
387  ERROR_HANDLE_DISK_FULL = (39),
388  ERROR_NOT_SUPPORTED = (50),
389  ERROR_REM_NOT_LIST = (51),
390  ERROR_DUP_NAME = (52),
391  ERROR_BAD_NETPATH = (53),
392  ERROR_NETWORK_BUSY = (54),
393  ERROR_DEV_NOT_EXIST = (55),
394  ERROR_TOO_MANY_CMDS = (56),
395  ERROR_ADAP_HDW_ERR = (57),
396  ERROR_BAD_NET_RESP = (58),
397  ERROR_UNEXP_NET_ERR = (59),
398  ERROR_BAD_REM_ADAP = (60),
399  ERROR_PRINTQ_FULL = (61),
400  ERROR_NO_SPOOL_SPACE = (62),
401  ERROR_PRINT_CANCELLED = (63),
402  ERROR_NETNAME_DELETED = (64),
403  ERROR_NETWORK_ACCESS_DENIED = (65),
404  ERROR_BAD_DEV_TYPE = (66),
405  ERROR_BAD_NET_NAME = (67),
406  ERROR_TOO_MANY_NAMES = (68),
407  ERROR_TOO_MANY_SESS = (69),
408  ERROR_SHARING_PAUSED = (70),
409  ERROR_REQ_NOT_ACCEP = (71),
410  ERROR_REDIR_PAUSED = (72),
411  ERROR_FILE_EXISTS = (80),
412  ERROR_CANNOT_MAKE = (82),
413  ERROR_FAIL_I24 = (83),
414  ERROR_OUT_OF_STRUCTURES = (84),
415  ERROR_ALREADY_ASSIGNED = (85),
416  ERROR_INVALID_PASSWORD = (86),
417  ERROR_INVALID_PARAMETER = (87),
418  ERROR_NET_WRITE_FAULT = (88),
419  ERROR_NO_PROC_SLOTS = (89),
420  ERROR_TOO_MANY_SEMAPHORES = (100),
421  ERROR_EXCL_SEM_ALREADY_OWNED = (101),
422  ERROR_SEM_IS_SET = (102),
423  ERROR_TOO_MANY_SEM_REQUESTS = (103),
424  ERROR_INVALID_AT_INTERRUPT_TIME = (104),
425  ERROR_SEM_OWNER_DIED = (105),
426  ERROR_SEM_USER_LIMIT = (106),
427  ERROR_DISK_CHANGE = (107),
428  ERROR_DRIVE_LOCKED = (108),
429  ERROR_BROKEN_PIPE = (109),
430  ERROR_OPEN_FAILED = (110),
431  ERROR_BUFFER_OVERFLOW = (111),
432  ERROR_DISK_FULL = (112),
433  ERROR_NO_MORE_SEARCH_HANDLES = (113),
434  ERROR_INVALID_TARGET_HANDLE = (114),
435  ERROR_INVALID_CATEGORY = (117),
436  ERROR_INVALID_VERIFY_SWITCH = (118),
437  ERROR_BAD_DRIVER_LEVEL = (119),
438  ERROR_CALL_NOT_IMPLEMENTED = (120),
439  ERROR_SEM_TIMEOUT = (121),
440  ERROR_INSUFFICIENT_BUFFER = (122),
441  ERROR_INVALID_NAME = (123),
442  ERROR_INVALID_LEVEL = (124),
443  ERROR_NO_VOLUME_LABEL = (125),
444  ERROR_MOD_NOT_FOUND = (126),
445  ERROR_PROC_NOT_FOUND = (127),
446  ERROR_WAIT_NO_CHILDREN = (128),
447  ERROR_CHILD_NOT_COMPLETE = (129),
448  ERROR_DIRECT_ACCESS_HANDLE = (130),
449  ERROR_NEGATIVE_SEEK = (131),
450  ERROR_SEEK_ON_DEVICE = (132),
451  ERROR_IS_JOIN_TARGET = (133),
452  ERROR_IS_JOINED = (134),
453  ERROR_IS_SUBSTED = (135),
454  ERROR_NOT_JOINED = (136),
455  ERROR_NOT_SUBSTED = (137),
456  ERROR_JOIN_TO_JOIN = (138),
457  ERROR_SUBST_TO_SUBST = (139),
458  ERROR_JOIN_TO_SUBST = (140),
459  ERROR_SUBST_TO_JOIN = (141),
460  ERROR_BUSY_DRIVE = (142),
461  ERROR_SAME_DRIVE = (143),
462  ERROR_DIR_NOT_ROOT = (144),
463  ERROR_DIR_NOT_EMPTY = (145),
464  ERROR_IS_SUBST_PATH = (146),
465  ERROR_IS_JOIN_PATH = (147),
466  ERROR_PATH_BUSY = (148),
467  ERROR_IS_SUBST_TARGET = (149),
468  ERROR_SYSTEM_TRACE = (150),
469  ERROR_INVALID_EVENT_COUNT = (151),
470  ERROR_TOO_MANY_MUXWAITERS = (152),
471  ERROR_INVALID_LIST_FORMAT = (153),
472  ERROR_LABEL_TOO_LONG = (154),
473  ERROR_TOO_MANY_TCBS = (155),
474  ERROR_SIGNAL_REFUSED = (156),
475  ERROR_DISCARDED = (157),
476  ERROR_NOT_LOCKED = (158),
477  ERROR_BAD_THREADID_ADDR = (159),
478  ERROR_BAD_ARGUMENTS = (160),
479  ERROR_BAD_PATHNAME = (161),
480  ERROR_SIGNAL_PENDING = (162),
481  ERROR_MAX_THRDS_REACHED = (164),
482  ERROR_LOCK_FAILED = (167),
483  ERROR_BUSY = (170),
484  ERROR_CANCEL_VIOLATION = (173),
485  ERROR_ATOMIC_LOCKS_NOT_SUPPORTED = (174),
486  ERROR_INVALID_SEGMENT_NUMBER = (180),
487  ERROR_INVALID_ORDINAL = (182),
488  ERROR_ALREADY_EXISTS = (183),
489  ERROR_INVALID_FLAG_NUMBER = (186),
490  ERROR_SEM_NOT_FOUND = (187),
491  ERROR_INVALID_STARTING_CODESEG = (188),
492  ERROR_INVALID_STACKSEG = (189),
493  ERROR_INVALID_MODULETYPE = (190),
494  ERROR_INVALID_EXE_SIGNATURE = (191),
495  ERROR_EXE_MARKED_INVALID = (192),
496  ERROR_BAD_EXE_FORMAT = (193),
497  ERROR_ITERATED_DATA_EXCEEDS_64k = (194),
498  ERROR_INVALID_MINALLOCSIZE = (195),
499  ERROR_DYNLINK_FROM_INVALID_RING = (196),
500  ERROR_IOPL_NOT_ENABLED = (197),
501  ERROR_INVALID_SEGDPL = (198),
502  ERROR_AUTODATASEG_EXCEEDS_64k = (199),
503  ERROR_RING2SEG_MUST_BE_MOVABLE = (200),
504  ERROR_RELOC_CHAIN_XEEDS_SEGLIM = (201),
505  ERROR_INFLOOP_IN_RELOC_CHAIN = (202),
506  ERROR_ENVVAR_NOT_FOUND = (203),
507  ERROR_NO_SIGNAL_SENT = (205),
508  ERROR_FILENAME_EXCED_RANGE = (206),
509  ERROR_RING2_STACK_IN_USE = (207),
510  ERROR_META_EXPANSION_TOO_LONG = (208),
511  ERROR_INVALID_SIGNAL_NUMBER = (209),
512  ERROR_THREAD_1_INACTIVE = (210),
513  ERROR_LOCKED = (212),
514  ERROR_TOO_MANY_MODULES = (214),
515  ERROR_NESTING_NOT_ALLOWED = (215),
516  ERROR_BAD_PIPE = (230),
517  ERROR_PIPE_BUSY = (231),
518  ERROR_NO_DATA = (232),
519  ERROR_PIPE_NOT_CONNECTED = (233),
520  ERROR_MORE_DATA = (234),
521  ERROR_VC_DISCONNECTED = (240),
522  ERROR_INVALID_EA_NAME = (254),
523  ERROR_EA_LIST_INCONSISTENT = (255),
524  ERROR_NO_MORE_ITEMS = (259),
525  ERROR_CANNOT_COPY = (266),
526  ERROR_DIRECTORY = (267),
527  ERROR_EAS_DIDNT_FIT = (275),
528  ERROR_EA_FILE_CORRUPT = (276),
529  ERROR_EA_TABLE_FULL = (277),
530  ERROR_INVALID_EA_HANDLE = (278),
531  ERROR_EAS_NOT_SUPPORTED = (282),
532  ERROR_NOT_OWNER = (288),
533  ERROR_TOO_MANY_POSTS = (298),
534  ERROR_PARTIAL_COPY = (299),
535  ERROR_MR_MID_NOT_FOUND = (317),
536  ERROR_INVALID_ADDRESS = (487),
537  ERROR_ARITHMETIC_OVERFLOW = (534),
538  ERROR_PIPE_CONNECTED = (535),
539  ERROR_PIPE_LISTENING = (536),
540  ERROR_EA_ACCESS_DENIED = (994),
541  ERROR_OPERATION_ABORTED = (995),
542  ERROR_IO_INCOMPLETE = (996),
543  ERROR_IO_PENDING = (997),
544  ERROR_NOACCESS = (998),
545  ERROR_SWAPERROR = (999),
546  ERROR_STACK_OVERFLOW = (1001),
547  ERROR_INVALID_MESSAGE = (1002),
548  ERROR_CAN_NOT_COMPLETE = (1003),
549  ERROR_INVALID_FLAGS = (1004),
550  ERROR_UNRECOGNIZED_VOLUME = (1005),
551  ERROR_FILE_INVALID = (1006),
552  ERROR_FULLSCREEN_MODE = (1007),
553  ERROR_NO_TOKEN = (1008),
554  ERROR_BADDB = (1009),
555  ERROR_BADKEY = (1010),
556  ERROR_CANTOPEN = (1011),
557  ERROR_CANTREAD = (1012),
558  ERROR_CANTWRITE = (1013),
559  ERROR_REGISTRY_RECOVERED = (1014),
560  ERROR_REGISTRY_CORRUPT = (1015),
561  ERROR_REGISTRY_IO_FAILED = (1016),
562  ERROR_NOT_REGISTRY_FILE = (1017),
563  ERROR_KEY_DELETED = (1018),
564  ERROR_NO_LOG_SPACE = (1019),
565  ERROR_KEY_HAS_CHILDREN = (1020),
566  ERROR_CHILD_MUST_BE_VOLATILE = (1021),
567  ERROR_NOTIFY_ENUM_DIR = (1022),
568  ERROR_DEPENDENT_SERVICES_RUNNING = (1051),
569  ERROR_INVALID_SERVICE_CONTROL = (1052),
570  ERROR_SERVICE_REQUEST_TIMEOUT = (1053),
571  ERROR_SERVICE_NO_THREAD = (1054),
572  ERROR_SERVICE_DATABASE_LOCKED = (1055),
573  ERROR_SERVICE_ALREADY_RUNNING = (1056),
574  ERROR_INVALID_SERVICE_ACCOUNT = (1057),
575  ERROR_SERVICE_DISABLED = (1058),
576  ERROR_CIRCULAR_DEPENDENCY = (1059),
577  ERROR_SERVICE_DOES_NOT_EXIST = (1060),
578  ERROR_SERVICE_CANNOT_ACCEPT_CTRL = (1061),
579  ERROR_SERVICE_NOT_ACTIVE = (1062),
580  ERROR_FAILED_SERVICE_CONTROLLER_CONNECT = (1063),
581  ERROR_EXCEPTION_IN_SERVICE = (1064),
582  ERROR_DATABASE_DOES_NOT_EXIST = (1065),
583  ERROR_SERVICE_SPECIFIC_ERROR = (1066),
584  ERROR_PROCESS_ABORTED = (1067),
585  ERROR_SERVICE_DEPENDENCY_FAIL = (1068),
586  ERROR_SERVICE_LOGON_FAILED = (1069),
587  ERROR_SERVICE_START_HANG = (1070),
588  ERROR_INVALID_SERVICE_LOCK = (1071),
589  ERROR_SERVICE_MARKED_FOR_DELETE = (1072),
590  ERROR_SERVICE_EXISTS = (1073),
591  ERROR_ALREADY_RUNNING_LKG = (1074),
592  ERROR_SERVICE_DEPENDENCY_DELETED = (1075),
593  ERROR_BOOT_ALREADY_ACCEPTED = (1076),
594  ERROR_SERVICE_NEVER_STARTED = (1077),
595  ERROR_DUPLICATE_SERVICE_NAME = (1078),
596  ERROR_END_OF_MEDIA = (1100),
597  ERROR_FILEMARK_DETECTED = (1101),
598  ERROR_BEGINNING_OF_MEDIA = (1102),
599  ERROR_SETMARK_DETECTED = (1103),
600  ERROR_NO_DATA_DETECTED = (1104),
601  ERROR_PARTITION_FAILURE = (1105),
602  ERROR_INVALID_BLOCK_LENGTH = (1106),
603  ERROR_DEVICE_NOT_PARTITIONED = (1107),
604  ERROR_UNABLE_TO_LOCK_MEDIA = (1108),
605  ERROR_UNABLE_TO_UNLOAD_MEDIA = (1109),
606  ERROR_MEDIA_CHANGED = (1110),
607  ERROR_BUS_RESET = (1111),
608  ERROR_NO_MEDIA_IN_DRIVE = (1112),
609  ERROR_NO_UNICODE_TRANSLATION = (1113),
610  ERROR_DLL_INIT_FAILED = (1114),
611  ERROR_SHUTDOWN_IN_PROGRESS = (1115),
612  ERROR_NO_SHUTDOWN_IN_PROGRESS = (1116),
613  ERROR_IO_DEVICE = (1117),
614  ERROR_SERIAL_NO_DEVICE = (1118),
615  ERROR_IRQ_BUSY = (1119),
616  ERROR_MORE_WRITES = (1120),
617  ERROR_COUNTER_TIMEOUT = (1121),
618  ERROR_FLOPPY_ID_MARK_NOT_FOUND = (1122),
619  ERROR_FLOPPY_WRONG_CYLINDER = (1123),
620  ERROR_FLOPPY_UNKNOWN_ERROR = (1124),
621  ERROR_FLOPPY_BAD_REGISTERS = (1125),
622  ERROR_DISK_RECALIBRATE_FAILED = (1126),
623  ERROR_DISK_OPERATION_FAILED = (1127),
624  ERROR_DISK_RESET_FAILED = (1128),
625  ERROR_EOM_OVERFLOW = (1129),
626  ERROR_NOT_ENOUGH_SERVER_MEMORY = (1130),
627  ERROR_POSSIBLE_DEADLOCK = (1131),
628  ERROR_MAPPED_ALIGNMENT = (1132),
629  ERROR_SET_POWER_STATE_VETOED = (1140),
630  ERROR_SET_POWER_STATE_FAILED = (1141),
631  ERROR_OLD_WIN_VERSION = (1150),
632  ERROR_APP_WRONG_OS = (1151),
633  ERROR_SINGLE_INSTANCE_APP = (1152),
634  ERROR_RMODE_APP = (1153),
635  ERROR_INVALID_DLL = (1154),
636  ERROR_NO_ASSOCIATION = (1155),
637  ERROR_DDE_FAIL = (1156),
638  ERROR_DLL_NOT_FOUND = (1157),
639  ERROR_BAD_USERNAME = (2202),
640  ERROR_NOT_CONNECTED = (2250),
641  ERROR_OPEN_FILES = (2401),
642  ERROR_ACTIVE_CONNECTIONS = (2402),
643  ERROR_DEVICE_IN_USE = (2404),
644  ERROR_BAD_DEVICE = (1200),
645  ERROR_CONNECTION_UNAVAIL = (1201),
646  ERROR_DEVICE_ALREADY_REMEMBERED = (1202),
647  ERROR_NO_NET_OR_BAD_PATH = (1203),
648  ERROR_BAD_PROVIDER = (1204),
649  ERROR_CANNOT_OPEN_PROFILE = (1205),
650  ERROR_BAD_PROFILE = (1206),
651  ERROR_NOT_CONTAINER = (1207),
652  ERROR_EXTENDED_ERROR = (1208),
653  ERROR_INVALID_GROUPNAME = (1209),
654  ERROR_INVALID_COMPUTERNAME = (1210),
655  ERROR_INVALID_EVENTNAME = (1211),
656  ERROR_INVALID_DOMAINNAME = (1212),
657  ERROR_INVALID_SERVICENAME = (1213),
658  ERROR_INVALID_NETNAME = (1214),
659  ERROR_INVALID_SHARENAME = (1215),
660  ERROR_INVALID_PASSWORDNAME = (1216),
661  ERROR_INVALID_MESSAGENAME = (1217),
662  ERROR_INVALID_MESSAGEDEST = (1218),
663  ERROR_SESSION_CREDENTIAL_CONFLICT = (1219),
664  ERROR_REMOTE_SESSION_LIMIT_EXCEEDED = (1220),
665  ERROR_DUP_DOMAINNAME = (1221),
666  ERROR_NO_NETWORK = (1222),
667  ERROR_CANCELLED = (1223),
668  ERROR_USER_MAPPED_FILE = (1224),
669  ERROR_CONNECTION_REFUSED = (1225),
670  ERROR_GRACEFUL_DISCONNECT = (1226),
671  ERROR_ADDRESS_ALREADY_ASSOCIATED = (1227),
672  ERROR_ADDRESS_NOT_ASSOCIATED = (1228),
673  ERROR_CONNECTION_INVALID = (1229),
674  ERROR_CONNECTION_ACTIVE = (1230),
675  ERROR_NETWORK_UNREACHABLE = (1231),
676  ERROR_HOST_UNREACHABLE = (1232),
677  ERROR_PROTOCOL_UNREACHABLE = (1233),
678  ERROR_PORT_UNREACHABLE = (1234),
679  ERROR_REQUEST_ABORTED = (1235),
680  ERROR_CONNECTION_ABORTED = (1236),
681  ERROR_RETRY = (1237),
682  ERROR_CONNECTION_COUNT_LIMIT = (1238),
683  ERROR_LOGIN_TIME_RESTRICTION = (1239),
684  ERROR_LOGIN_WKSTA_RESTRICTION = (1240),
685  ERROR_INCORRECT_ADDRESS = (1241),
686  ERROR_ALREADY_REGISTERED = (1242),
687  ERROR_SERVICE_NOT_FOUND = (1243),
688  ERROR_NOT_AUTHENTICATED = (1244),
689  ERROR_NOT_LOGGED_ON = (1245),
690  ERROR_CONTINUE = (1246),
691  ERROR_ALREADY_INITIALIZED = (1247),
692  ERROR_NO_MORE_DEVICES = (1248),
693  ERROR_NOT_ALL_ASSIGNED = (1300),
694  ERROR_SOME_NOT_MAPPED = (1301),
695  ERROR_NO_QUOTAS_FOR_ACCOUNT = (1302),
696  ERROR_LOCAL_USER_SESSION_KEY = (1303),
697  ERROR_NULL_LM_PASSWORD = (1304),
698  ERROR_UNKNOWN_REVISION = (1305),
699  ERROR_REVISION_MISMATCH = (1306),
700  ERROR_INVALID_OWNER = (1307),
701  ERROR_INVALID_PRIMARY_GROUP = (1308),
702  ERROR_NO_IMPERSONATION_TOKEN = (1309),
703  ERROR_CANT_DISABLE_MANDATORY = (1310),
704  ERROR_NO_LOGON_SERVERS = (1311),
705  ERROR_NO_SUCH_LOGON_SESSION = (1312),
706  ERROR_NO_SUCH_PRIVILEGE = (1313),
707  ERROR_PRIVILEGE_NOT_HELD = (1314),
708  ERROR_INVALID_ACCOUNT_NAME = (1315),
709  ERROR_USER_EXISTS = (1316),
710  ERROR_NO_SUCH_USER = (1317),
711  ERROR_GROUP_EXISTS = (1318),
712  ERROR_NO_SUCH_GROUP = (1319),
713  ERROR_MEMBER_IN_GROUP = (1320),
714  ERROR_MEMBER_NOT_IN_GROUP = (1321),
715  ERROR_LAST_ADMIN = (1322),
716  ERROR_WRONG_PASSWORD = (1323),
717  ERROR_ILL_FORMED_PASSWORD = (1324),
718  ERROR_PASSWORD_RESTRICTION = (1325),
719  ERROR_LOGON_FAILURE = (1326),
720  ERROR_ACCOUNT_RESTRICTION = (1327),
721  ERROR_INVALID_LOGON_HOURS = (1328),
722  ERROR_INVALID_WORKSTATION = (1329),
723  ERROR_PASSWORD_EXPIRED = (1330),
724  ERROR_ACCOUNT_DISABLED = (1331),
725  ERROR_NONE_MAPPED = (1332),
726  ERROR_TOO_MANY_LUIDS_REQUESTED = (1333),
727  ERROR_LUIDS_EXHAUSTED = (1334),
728  ERROR_INVALID_SUB_AUTHORITY = (1335),
729  ERROR_INVALID_ACL = (1336),
730  ERROR_INVALID_SID = (1337),
731  ERROR_INVALID_SECURITY_DESCR = (1338),
732  ERROR_BAD_INHERITANCE_ACL = (1340),
733  ERROR_SERVER_DISABLED = (1341),
734  ERROR_SERVER_NOT_DISABLED = (1342),
735  ERROR_INVALID_ID_AUTHORITY = (1343),
736  ERROR_ALLOTTED_SPACE_EXCEEDED = (1344),
737  ERROR_INVALID_GROUP_ATTRIBUTES = (1345),
738  ERROR_BAD_IMPERSONATION_LEVEL = (1346),
739  ERROR_CANT_OPEN_ANONYMOUS = (1347),
740  ERROR_BAD_VALIDATION_CLASS = (1348),
741  ERROR_BAD_TOKEN_TYPE = (1349),
742  ERROR_NO_SECURITY_ON_OBJECT = (1350),
743  ERROR_CANT_ACCESS_DOMAIN_INFO = (1351),
744  ERROR_INVALID_SERVER_STATE = (1352),
745  ERROR_INVALID_DOMAIN_STATE = (1353),
746  ERROR_INVALID_DOMAIN_ROLE = (1354),
747  ERROR_NO_SUCH_DOMAIN = (1355),
748  ERROR_DOMAIN_EXISTS = (1356),
749  ERROR_DOMAIN_LIMIT_EXCEEDED = (1357),
750  ERROR_INTERNAL_DB_CORRUPTION = (1358),
751  ERROR_INTERNAL_ERROR = (1359),
752  ERROR_GENERIC_NOT_MAPPED = (1360),
753  ERROR_BAD_DESCRIPTOR_FORMAT = (1361),
754  ERROR_NOT_LOGON_PROCESS = (1362),
755  ERROR_LOGON_SESSION_EXISTS = (1363),
756  ERROR_NO_SUCH_PACKAGE = (1364),
757  ERROR_BAD_LOGON_SESSION_STATE = (1365),
758  ERROR_LOGON_SESSION_COLLISION = (1366),
759  ERROR_INVALID_LOGON_TYPE = (1367),
760  ERROR_CANNOT_IMPERSONATE = (1368),
761  ERROR_RXACT_INVALID_STATE = (1369),
762  ERROR_RXACT_COMMIT_FAILURE = (1370),
763  ERROR_SPECIAL_ACCOUNT = (1371),
764  ERROR_SPECIAL_GROUP = (1372),
765  ERROR_SPECIAL_USER = (1373),
766  ERROR_MEMBERS_PRIMARY_GROUP = (1374),
767  ERROR_TOKEN_ALREADY_IN_USE = (1375),
768  ERROR_NO_SUCH_ALIAS = (1376),
769  ERROR_MEMBER_NOT_IN_ALIAS = (1377),
770  ERROR_MEMBER_IN_ALIAS = (1378),
771  ERROR_ALIAS_EXISTS = (1379),
772  ERROR_LOGON_NOT_GRANTED = (1380),
773  ERROR_TOO_MANY_SECRETS = (1381),
774  ERROR_SECRET_TOO_LONG = (1382),
775  ERROR_INTERNAL_DB_ERROR = (1383),
776  ERROR_TOO_MANY___FILE___IDS = (1384),
777  ERROR_LOGON_TYPE_NOT_GRANTED = (1385),
778  ERROR_NT_CROSS_ENCRYPTION_REQUIRED = (1386),
779  ERROR_NO_SUCH_MEMBER = (1387),
780  ERROR_INVALID_MEMBER = (1388),
781  ERROR_TOO_MANY_SIDS = (1389),
782  ERROR_LM_CROSS_ENCRYPTION_REQUIRED = (1390),
783  ERROR_NO_INHERITANCE = (1391),
784  ERROR_FILE_CORRUPT = (1392),
785  ERROR_DISK_CORRUPT = (1393),
786  ERROR_NO_USER_SESSION_KEY = (1394),
787  ERROR_LICENSE_QUOTA_EXCEEDED = (1395),
788  ERROR_INVALID_WINDOW_HANDLE = (1400),
789  ERROR_INVALID_MENU_HANDLE = (1401),
790  ERROR_INVALID_CURSOR_HANDLE = (1402),
791  ERROR_INVALID_ACCEL_HANDLE = (1403),
792  ERROR_INVALID_HOOK_HANDLE = (1404),
793  ERROR_INVALID_DWP_HANDLE = (1405),
794  ERROR_TLW_WITH_WSCHILD = (1406),
795  ERROR_CANNOT_FIND_WND_CLASS = (1407),
796  ERROR_WINDOW_OF_OTHER_THREAD = (1408),
797  ERROR_HOTKEY_ALREADY_REGISTERED = (1409),
798  ERROR_CLASS_ALREADY_EXISTS = (1410),
799  ERROR_CLASS_DOES_NOT_EXIST = (1411),
800  ERROR_CLASS_HAS_WINDOWS = (1412),
801  ERROR_INVALID_INDEX = (1413),
802  ERROR_INVALID_ICON_HANDLE = (1414),
803  ERROR_PRIVATE_DIALOG_INDEX = (1415),
804  ERROR_LISTBOX_ID_NOT_FOUND = (1416),
805  ERROR_NO_WILDCARD_CHARACTERS = (1417),
806  ERROR_CLIPBOARD_NOT_OPEN = (1418),
807  ERROR_HOTKEY_NOT_REGISTERED = (1419),
808  ERROR_WINDOW_NOT_DIALOG = (1420),
809  ERROR_CONTROL_ID_NOT_FOUND = (1421),
810  ERROR_INVALID_COMBOBOX_MESSAGE = (1422),
811  ERROR_WINDOW_NOT_COMBOBOX = (1423),
812  ERROR_INVALID_EDIT_HEIGHT = (1424),
813  ERROR_DC_NOT_FOUND = (1425),
814  ERROR_INVALID_HOOK_FILTER = (1426),
815  ERROR_INVALID_FILTER_PROC = (1427),
816  ERROR_HOOK_NEEDS_HMOD = (1428),
817  ERROR_GLOBAL_ONLY_HOOK = (1429),
818  ERROR_JOURNAL_HOOK_SET = (1430),
819  ERROR_HOOK_NOT_INSTALLED = (1431),
820  ERROR_INVALID_LB_MESSAGE = (1432),
821  ERROR_SETCOUNT_ON_BAD_LB = (1433),
822  ERROR_LB_WITHOUT_TABSTOPS = (1434),
823  ERROR_DESTROY_OBJECT_OF_OTHER_THREAD = (1435),
824  ERROR_CHILD_WINDOW_MENU = (1436),
825  ERROR_NO_SYSTEM_MENU = (1437),
826  ERROR_INVALID_MSGBOX_STYLE = (1438),
827  ERROR_INVALID_SPI_VALUE = (1439),
828  ERROR_SCREEN_ALREADY_LOCKED = (1440),
829  ERROR_HWNDS_HAVE_DIFF_PARENT = (1441),
830  ERROR_NOT_CHILD_WINDOW = (1442),
831  ERROR_INVALID_GW_COMMAND = (1443),
832  ERROR_INVALID_THREAD_ID = (1444),
833  ERROR_NON_MDICHILD_WINDOW = (1445),
834  ERROR_POPUP_ALREADY_ACTIVE = (1446),
835  ERROR_NO_SCROLLBARS = (1447),
836  ERROR_INVALID_SCROLLBAR_RANGE = (1448),
837  ERROR_INVALID_SHOWWIN_COMMAND = (1449),
838  ERROR_NO_SYSTEM_RESOURCES = (1450),
839  ERROR_NONPAGED_SYSTEM_RESOURCES = (1451),
840  ERROR_PAGED_SYSTEM_RESOURCES = (1452),
841  ERROR_WORKING_SET_QUOTA = (1453),
842  ERROR_PAGEFILE_QUOTA = (1454),
843  ERROR_COMMITMENT_LIMIT = (1455),
844  ERROR_MENU_ITEM_NOT_FOUND = (1456),
845  ERROR_EVENTLOG_FILE_CORRUPT = (1500),
846  ERROR_EVENTLOG_CANT_START = (1501),
847  ERROR_LOG_FILE_FULL = (1502),
848  ERROR_EVENTLOG_FILE_CHANGED = (1503),
849  RPC_S_INVALID_STRING_BINDING = (1700),
850  RPC_S_WRONG_KIND_OF_BINDING = (1701),
851  RPC_S_INVALID_BINDING = (1702),
852  RPC_S_PROTSEQ_NOT_SUPPORTED = (1703),
853  RPC_S_INVALID_RPC_PROTSEQ = (1704),
854  RPC_S_INVALID_STRING_UUID = (1705),
855  RPC_S_INVALID_ENDPOINT_FORMAT = (1706),
856  RPC_S_INVALID_NET_ADDR = (1707),
857  RPC_S_NO_ENDPOINT_FOUND = (1708),
858  RPC_S_INVALID_TIMEOUT = (1709),
859  RPC_S_OBJECT_NOT_FOUND = (1710),
860  RPC_S_ALREADY_REGISTERED = (1711),
861  RPC_S_TYPE_ALREADY_REGISTERED = (1712),
862  RPC_S_ALREADY_LISTENING = (1713),
863  RPC_S_NO_PROTSEQS_REGISTERED = (1714),
864  RPC_S_NOT_LISTENING = (1715),
865  RPC_S_UNKNOWN_MGR_TYPE = (1716),
866  RPC_S_UNKNOWN_IF = (1717),
867  RPC_S_NO_BINDINGS = (1718),
868  RPC_S_NO_PROTSEQS = (1719),
869  RPC_S_CANT_CREATE_ENDPOINT = (1720),
870  RPC_S_OUT_OF_RESOURCES = (1721),
871  RPC_S_SERVER_UNAVAILABLE = (1722),
872  RPC_S_SERVER_TOO_BUSY = (1723),
873  RPC_S_INVALID_NETWORK_OPTIONS = (1724),
874  RPC_S_NO_CALL_ACTIVE = (1725),
875  RPC_S_CALL_FAILED = (1726),
876  RPC_S_CALL_FAILED_DNE = (1727),
877  RPC_S_PROTOCOL_ERROR = (1728),
878  RPC_S_UNSUPPORTED_TRANS_SYN = (1730),
879  RPC_S_UNSUPPORTED_TYPE = (1732),
880  RPC_S_INVALID_TAG = (1733),
881  RPC_S_INVALID_BOUND = (1734),
882  RPC_S_NO_ENTRY_NAME = (1735),
883  RPC_S_INVALID_NAME_SYNTAX = (1736),
884  RPC_S_UNSUPPORTED_NAME_SYNTAX = (1737),
885  RPC_S_UUID_NO_ADDRESS = (1739),
886  RPC_S_DUPLICATE_ENDPOINT = (1740),
887  RPC_S_UNKNOWN_AUTHN_TYPE = (1741),
888  RPC_S_MAX_CALLS_TOO_SMALL = (1742),
889  RPC_S_STRING_TOO_LONG = (1743),
890  RPC_S_PROTSEQ_NOT_FOUND = (1744),
891  RPC_S_PROCNUM_OUT_OF_RANGE = (1745),
892  RPC_S_BINDING_HAS_NO_AUTH = (1746),
893  RPC_S_UNKNOWN_AUTHN_SERVICE = (1747),
894  RPC_S_UNKNOWN_AUTHN_LEVEL = (1748),
895  RPC_S_INVALID_AUTH_IDENTITY = (1749),
896  RPC_S_UNKNOWN_AUTHZ_SERVICE = (1750),
897  EPT_S_INVALID_ENTRY = (1751),
898  EPT_S_CANT_PERFORM_OP = (1752),
899  EPT_S_NOT_REGISTERED = (1753),
900  RPC_S_NOTHING_TO_EXPORT = (1754),
901  RPC_S_INCOMPLETE_NAME = (1755),
902  RPC_S_INVALID_VERS_OPTION = (1756),
903  RPC_S_NO_MORE_MEMBERS = (1757),
904  RPC_S_NOT_ALL_OBJS_UNEXPORTED = (1758),
905  RPC_S_INTERFACE_NOT_FOUND = (1759),
906  RPC_S_ENTRY_ALREADY_EXISTS = (1760),
907  RPC_S_ENTRY_NOT_FOUND = (1761),
908  RPC_S_NAME_SERVICE_UNAVAILABLE = (1762),
909  RPC_S_INVALID_NAF_ID = (1763),
910  RPC_S_CANNOT_SUPPORT = (1764),
911  RPC_S_NO___FILE___AVAILABLE = (1765),
912  RPC_S_INTERNAL_ERROR = (1766),
913  RPC_S_ZERO_DIVIDE = (1767),
914  RPC_S_ADDRESS_ERROR = (1768),
915  RPC_S_FP_DIV_ZERO = (1769),
916  RPC_S_FP_UNDERFLOW = (1770),
917  RPC_S_FP_OVERFLOW = (1771),
918  RPC_X_NO_MORE_ENTRIES = (1772),
919  RPC_X_SS_CHAR_TRANS_OPEN_FAIL = (1773),
920  RPC_X_SS_CHAR_TRANS_SHORT_FILE = (1774),
921  RPC_X_SS_IN_NULL___FILE__ = (1775),
922  RPC_X_SS___FILE___DAMAGED = (1777),
923  RPC_X_SS_HANDLES_MISMATCH = (1778),
924  RPC_X_SS_CANNOT_GET_CALL_HANDLE = (1779),
925  RPC_X_NULL_REF_POINTER = (1780),
926  RPC_X_ENUM_VALUE_OUT_OF_RANGE = (1781),
927  RPC_X_BYTE_COUNT_TOO_SMALL = (1782),
928  RPC_X_BAD_STUB_DATA = (1783),
929  ERROR_INVALID_USER_BUFFER = (1784),
930  ERROR_UNRECOGNIZED_MEDIA = (1785),
931  ERROR_NO_TRUST_LSA_SECRET = (1786),
932  ERROR_NO_TRUST_SAM_ACCOUNT = (1787),
933  ERROR_TRUSTED_DOMAIN_FAILURE = (1788),
934  ERROR_TRUSTED_RELATIONSHIP_FAILURE = (1789),
935  ERROR_TRUST_FAILURE = (1790),
936  RPC_S_CALL_IN_PROGRESS = (1791),
937  ERROR_NETLOGON_NOT_STARTED = (1792),
938  ERROR_ACCOUNT_EXPIRED = (1793),
939  ERROR_REDIRECTOR_HAS_OPEN_HANDLES = (1794),
940  ERROR_PRINTER_DRIVER_ALREADY_INSTALLED = (1795),
941  ERROR_UNKNOWN_PORT = (1796),
942  ERROR_UNKNOWN_PRINTER_DRIVER = (1797),
943  ERROR_UNKNOWN_PRINTPROCESSOR = (1798),
944  ERROR_INVALID_SEPARATOR_FILE = (1799),
945  ERROR_INVALID_PRIORITY = (1800),
946  ERROR_INVALID_PRINTER_NAME = (1801),
947  ERROR_PRINTER_ALREADY_EXISTS = (1802),
948  ERROR_INVALID_PRINTER_COMMAND = (1803),
949  ERROR_INVALID_DATATYPE = (1804),
950  ERROR_INVALID_ENVIRONMENT = (1805),
951  RPC_S_NO_MORE_BINDINGS = (1806),
952  ERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT = (1807),
953  ERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT = (1808),
954  ERROR_NOLOGON_SERVER_TRUST_ACCOUNT = (1809),
955  ERROR_DOMAIN_TRUST_INCONSISTENT = (1810),
956  ERROR_SERVER_HAS_OPEN_HANDLES = (1811),
957  ERROR_RESOURCE_DATA_NOT_FOUND = (1812),
958  ERROR_RESOURCE_TYPE_NOT_FOUND = (1813),
959  ERROR_RESOURCE_NAME_NOT_FOUND = (1814),
960  ERROR_RESOURCE_LANG_NOT_FOUND = (1815),
961  ERROR_NOT_ENOUGH_QUOTA = (1816),
962  RPC_S_NO_INTERFACES = (1817),
963  RPC_S_CALL_CANCELLED = (1818),
964  RPC_S_BINDING_INCOMPLETE = (1819),
965  RPC_S_COMM_FAILURE = (1820),
966  RPC_S_UNSUPPORTED_AUTHN_LEVEL = (1821),
967  RPC_S_NO_PRINC_NAME = (1822),
968  RPC_S_NOT_RPC_ERROR = (1823),
969  RPC_S_UUID_LOCAL_ONLY = (1824),
970  RPC_S_SEC_PKG_ERROR = (1825),
971  RPC_S_NOT_CANCELLED = (1826),
972  RPC_X_INVALID_ES_ACTION = (1827),
973  RPC_X_WRONG_ES_VERSION = (1828),
974  RPC_X_WRONG_STUB_VERSION = (1829),
975  RPC_S_GROUP_MEMBER_NOT_FOUND = (1898),
976  EPT_S_CANT_CREATE = (1899),
977  RPC_S_INVALID_OBJECT = (1900),
978  ERROR_INVALID_TIME = (1901),
979  ERROR_INVALID_FORM_NAME = (1902),
980  ERROR_INVALID_FORM_SIZE = (1903),
981  ERROR_ALREADY_WAITING = (1904),
982  ERROR_PRINTER_DELETED = (1905),
983  ERROR_INVALID_PRINTER_STATE = (1906),
984  ERROR_PASSWORD_MUST_CHANGE = (1907),
985  ERROR_DOMAIN_CONTROLLER_NOT_FOUND = (1908),
986  ERROR_ACCOUNT_LOCKED_OUT = (1909),
987  ERROR_NO_BROWSER_SERVERS_FOUND = (6118),
988  ERROR_INVALID_PIXEL_FORMAT = (2000),
989  ERROR_BAD_DRIVER = (2001),
990  ERROR_INVALID_WINDOW_STYLE = (2002),
991  ERROR_METAFILE_NOT_SUPPORTED = (2003),
992  ERROR_TRANSFORM_NOT_SUPPORTED = (2004),
993  ERROR_CLIPPING_NOT_SUPPORTED = (2005),
994  ERROR_UNKNOWN_PRINT_MONITOR = (3000),
995  ERROR_PRINTER_DRIVER_IN_USE = (3001),
996  ERROR_SPOOL_FILE_NOT_FOUND = (3002),
997  ERROR_SPL_NO_STARTDOC = (3003),
998  ERROR_SPL_NO_ADDJOB = (3004),
999  ERROR_PRINT_PROCESSOR_ALREADY_INSTALLED = (3005),
1000  ERROR_PRINT_MONITOR_ALREADY_INSTALLED = (3006),
1001  ERROR_WINS_INTERNAL = (4000),
1002  ERROR_CAN_NOT_DEL_LOCAL_WINS = (4001),
1003  ERROR_STATIC_INIT = (4002),
1004  ERROR_INC_BACKUP = (4003),
1005  ERROR_FULL_BACKUP = (4004),
1006  ERROR_REC_NON_EXISTENT = (4005),
1007  ERROR_RPL_NOT_ALLOWED = (4006),
1008  MAX_PATH = (260),
1009  LF_FACESIZE = (32),
1010  LF_FULLFACESIZE = (64),
1011  ELF_VENDOR_SIZE = (4),
1012  SECURITY_STATIC_TRACKING = (0),
1013  SECURITY_DYNAMIC_TRACKING = (1),
1014  MAX_DEFAULTCHAR = (2),
1015  MAX_LEADBYTES = (12),
1016  EXCEPTION_MAXIMUM_PARAMETERS = (15),
1017  CCHDEVICENAME = (32),
1018  CCHFORMNAME = (32),
1019  MENU_TEXT_LEN = (40),
1020  MAX_LANA = (254),
1021  NCBNAMSZ = (16),
1022  NETBIOS_NAME_LEN = (16),
1023  OFS_MAXPATHNAME = (128),
1024  MAX_TAB_STOPS = (32),
1025  ANYSIZE_ARRAY = (1),
1026  RAS_MaxCallbackNumber = (128),
1027  RAS_MaxDeviceName = (128),
1028  RAS_MaxDeviceType = (16),
1029  RAS_MaxEntryName = (256),
1030  RAS_MaxIpAddress = (15),
1031  RAS_MaxIpxAddress = (21),
1032  RAS_MaxPhoneNumber = (128),
1033  UNLEN = (256),
1034  PWLEN = (256),
1035  CNLEN = (15),
1036  DNLEN = (15),
1037  MAXDWORD = (0xFFFFFFFF),
1038  MAXWORD = (0xFFFF),
1039  MAXBYTE = (0xFF),
1040  MINCHAR = (0x80),
1041  MAXCHAR = (0x7F),
1042  MINSHORT = (0x8000),
1043  MAXSHORT = (0x7FFF),
1044  MINLONG = (0x80000000),
1045  MAXLONG = (0x7FFFFFFF),
1046  FILE_BEGIN = (0),
1047  FILE_CURRENT = (1),
1048  FILE_END = (2),
1049  OF_READ = (0),
1050  OF_READWRITE = (2),
1051  OF_WRITE = (1),
1052  OF_SHARE_COMPAT = (0),
1053  OF_SHARE_DENY_NONE = (64),
1054  OF_SHARE_DENY_READ = (48),
1055  OF_SHARE_DENY_WRITE = (32),
1056  OF_SHARE_EXCLUSIVE = (16),
1057  OF_CANCEL = (2048),
1058  OF_CREATE = (4096),
1059  OF_DELETE = (512),
1060  OF_EXIST = (16384),
1061  OF_PARSE = (256),
1062  OF_PROMPT = (8192),
1063  OF_REOPEN = (32768),
1064  OF_VERIFY = (1024),
1065  HKL_NEXT = (1),
1066  HKL_PREV = (0),
1067  KLF_REORDER = (8),
1068  KLF_UNLOADPREVIOUS = (4),
1069  KLF_ACTIVATE = (1),
1070  KLF_NOTELLSHELL = (128),
1071  KLF_REPLACELANG = (16),
1072  KLF_SUBSTITUTE_OK = (2),
1073  MF_BITMAP = (0x4),
1074  MF_DISABLED = (0x2),
1075  MF_ENABLED = (0),
1076  MF_GRAYED = (0x1),
1077  MF_HELP = (0x4000),
1078  MF_MENUBARBREAK = (0x20),
1079  MF_MENUBREAK = (0x40),
1080  MF_MOUSESELECT = (0x8000),
1081  MF_OWNERDRAW = (0x100),
1082  MF_POPUP = (0x10),
1083  MF_SEPARATOR = (0x800),
1084  MF_STRING = (0),
1085  MF_SYSMENU = (0x2000),
1086  MF_USECHECKBITMAPS = (0x200),
1087  BLACKNESS = (0x00000042),
1088  NOTSRCERASE = (0x001100A6),
1089  NOTSRCCOPY = (0x00330008),
1090  SRCERASE = (0x00440328),
1091  DSTINVERT = (0x00550009),
1092  PATINVERT = (0x005A0049),
1093  SRCINVERT = (0x00660046),
1094  SRCAND = (0x008800C6),
1095  MERGEPAINT = (0x00BB0226),
1096  MERGECOPY = (0x00C000CA),
1097  SRCCOPY = (0x00CC0020),
1098  SRCPAINT = (0x00EE0086),
1099  PATCOPY = (0x00F00021),
1100  PATPAINT = (0x00FB0A09),
1101  WHITENESS = (0x00FF0062),
1102  R2_BLACK = (1),
1103  R2_COPYPEN = (13),
1104  R2_MASKNOTPEN = (3),
1105  R2_MASKPEN = (9),
1106  R2_MASKPENNOT = (5),
1107  R2_MERGENOTPEN = (12),
1108  R2_MERGEPEN = (15),
1109  R2_MERGEPENNOT = (14),
1110  R2_NOP = (11),
1111  R2_NOT = (6),
1112  R2_NOTCOPYPEN = (4),
1113  R2_NOTMASKPEN = (8),
1114  R2_NOTMERGEPEN = (2),
1115  R2_NOTXORPEN = (10),
1116  R2_WHITE = (16),
1117  R2_XORPEN = (7),
1118  BSF_FLUSHDISK = (4),
1119  BSF_FORCEIFHUNG = (32),
1120  BSF_IGNORECURRENTTASK = (2),
1121  BSF_NOHANG = (8),
1122  BSF_POSTMESSAGE = (16),
1123  BSF_QUERY = (1),
1124  BSM_ALLCOMPONENTS = (0),
1125  BSM_APPLICATIONS = (8),
1126  BSM_INSTALLABLEDRIVERS = (4),
1127  BSM_NETDRIVER = (2),
1128  BSM_VXDS = (1),
1129  BROADCAST_QUERY_DENY = (1112363332),
1130  NMPWAIT_NOWAIT = (1),
1131  NMPWAIT_WAIT_FOREVER = -((1)),
1132  NMPWAIT_USE_DEFAULT_WAIT = (0),
1133  MDITILE_SKIPDISABLED = (2),
1134  MDITILE_HORIZONTAL = (1),
1135  MDITILE_VERTICAL = (0),
1136  HCBT_ACTIVATE = (5),
1137  HCBT_CLICKSKIPPED = (6),
1138  HCBT_CREATEWND = (3),
1139  HCBT_DESTROYWND = (4),
1140  HCBT_KEYSKIPPED = (7),
1141  HCBT_MINMAX = (1),
1142  HCBT_MOVESIZE = (0),
1143  HCBT_QS = (2),
1144  HCBT_SETFOCUS = (9),
1145  HCBT_SYSCOMMAND = (8),
1146  DM_BITSPERPEL = (0x40000),
1147  DM_PELSWIDTH = (0x80000),
1148  DM_PELSHEIGHT = (0x100000),
1149  DM_DISPLAYFLAGS = (0x200000),
1150  DM_DISPLAYFREQUENCY = (0x400000),
1151  CDS_UPDATEREGISTRY = (1),
1152  CDS_TEST = (2),
1153  DISP_CHANGE_SUCCESSFUL = (0),
1154  DISP_CHANGE_RESTART = (1),
1155  DISP_CHANGE_BADFLAGS = -((4)),
1156  DISP_CHANGE_FAILED = -((1)),
1157  DISP_CHANGE_BADMODE = -((2)),
1158  DISP_CHANGE_NOTUPDATED = -((3)),
1159  SERVICE_NO_CHANGE = -((1)),
1160  SERVICE_WIN32_OWN_PROCESS = (16),
1161  SERVICE_WIN32_SHARE_PROCESS = (32),
1162  SERVICE_KERNEL_DRIVER = (1),
1163  SERVICE_FILE_SYSTEM_DRIVER = (2),
1164  SERVICE_INTERACTIVE_PROCESS = (256),
1165  SERVICE_BOOT_START = (0),
1166  SERVICE_SYSTEM_START = (1),
1167  SERVICE_AUTO_START = (2),
1168  SERVICE_DEMAND_START = (3),
1169  SERVICE_DISABLED = (4),
1170  SERVICE_STOPPED = (1),
1171  SERVICE_START_PENDING = (2),
1172  SERVICE_STOP_PENDING = (3),
1173  SERVICE_RUNNING = (4),
1174  SERVICE_CONTINUE_PENDING = (5),
1175  SERVICE_PAUSE_PENDING = (6),
1176  SERVICE_PAUSED = (7),
1177  SERVICE_ACCEPT_STOP = (1),
1178  SERVICE_ACCEPT_PAUSE_CONTINUE = (2),
1179  SERVICE_ACCEPT_SHUTDOWN = (4),
1180  BST_CHECKED = (1),
1181  BST_INDETERMINATE = (2),
1182  BST_UNCHECKED = (0),
1183  BST_FOCUS = (8),
1184  BST_PUSHED = (4),
1185  MF_BYCOMMAND = (0),
1186  MF_BYPOSITION = (0x400),
1187  MF_CHECKED = (0x8),
1188  MF_UNCHECKED = (0),
1189  MF_HILITE = (0x80),
1190  MF_UNHILITE = (0),
1191  CWP_ALL = (0),
1192  CWP_SKIPINVISIBLE = (1),
1193  CWP_SKIPDISABLED = (2),
1194  CWP_SKIPTRANSPARENT = (4),
1195  CE_BREAK = (16),
1196  CE_DNS = (2048),
1197  CE_FRAME = (8),
1198  CE_IOE = (1024),
1199  CE_MODE = (32768),
1200  CE_OOP = (4096),
1201  CE_OVERRUN = (2),
1202  CE_PTO = (512),
1203  CE_RXOVER = (1),
1204  CE_RXPARITY = (4),
1205  CE_TXFULL = (256),
1206  RGN_AND = (1),
1207  RGN_COPY = (5),
1208  RGN_DIFF = (4),
1209  RGN_OR = (2),
1210  RGN_XOR = (3),
1211  NULLREGION = (1),
1212  SIMPLEREGION = (2),
1213  COMPLEXREGION = (3),
1214  ERROR = (0),
1215  CDERR_DIALOGFAILURE = (0xffff),
1216  CDERR_FINDRESFAILURE = (6),
1217  CDERR_INITIALIZATION = (2),
1218  CDERR_LOADRESFAILURE = (7),
1219  CDERR_LOADSTRFAILURE = (5),
1220  CDERR_LOCKRESFAILURE = (8),
1221  CDERR_MEMALLOCFAILURE = (9),
1222  CDERR_MEMLOCKFAILURE = (10),
1223  CDERR_NOHINSTANCE = (4),
1224  CDERR_NOHOOK = (11),
1225  CDERR_NOTEMPLATE = (3),
1226  CDERR_REGISTERMSGFAIL = (12),
1227  CDERR_STRUCTSIZE = (1),
1228  PDERR_CREATEICFAILURE = (0x1000)+(10),
1229  PDERR_DEFAULTDIFFERENT = (0x1000)+(12),
1230  PDERR_DNDMMISMATCH = (0x1000)+(9),
1231  PDERR_GETDEVMODEFAIL = (0x1000)+(5),
1232  PDERR_INITFAILURE = (0x1000)+(6),
1233  PDERR_LOADDRVFAILURE = (0x1000)+(4),
1234  PDERR_NODEFAULTPRN = (0x1000)+(8),
1235  PDERR_NODEVICES = (0x1000)+(7),
1236  PDERR_PARSEFAILURE = (0x1000)+(2),
1237  PDERR_PRINTERNOTFOUND = (0x1000)+(11),
1238  PDERR_RETDEFFAILURE = (0x1000)+(3),
1239  PDERR_SETUPFAILURE = (0x1000)+(1),
1240  CFERR_MAXLESSTHANMIN = (0x2000)+(2),
1241  CFERR_NOFONTS = (0x2000)+(1),
1242  FNERR_BUFFERTOOSMALL = (0x3000)+(3),
1243  FNERR_INVALIDFILENAME = (0x3000)+(2),
1244  FNERR_SUBCLASSFAILURE = (0x3000)+(1),
1245  FRERR_BUFFERLENGTHZERO = (0x4000)+(1),
1246  LOCALE_SYSTEM_DEFAULT = (0x800),
1247  LOCALE_USER_DEFAULT = (0x400),
1248  NORM_IGNORECASE = (1),
1249  NORM_IGNOREKANATYPE = (65536),
1250  NORM_IGNORENONSPACE = (2),
1251  NORM_IGNORESYMBOLS = (4),
1252  NORM_IGNOREWIDTH = (131072),
1253  SORT_STRINGSORT = (4096),
1254  LCMAP_BYTEREV = (2048),
1255  LCMAP_FULLWIDTH = (8388608),
1256  LCMAP_HALFWIDTH = (4194304),
1257  LCMAP_HIRAGANA = (1048576),
1258  LCMAP_KATAKANA = (2097152),
1259  LCMAP_LOWERCASE = (256),
1260  LCMAP_SORTKEY = (1024),
1261  LCMAP_UPPERCASE = (512),
1262  DBG_CONTINUE = (0x10002),
1263  DBG_CONTROL_BREAK = (0x40010008),
1264  DBG_CONTROL_C = (0x40010005),
1265  DBG_EXCEPTION_NOT_HANDLED = (0x80010001),
1266  DBG_TERMINATE_THREAD = (0x40010003),
1267  DBG_TERMINATE_PROCESS = (0x40010004),
1268  SERVICE_CONTROL_STOP = (1),
1269  SERVICE_CONTROL_PAUSE = (2),
1270  SERVICE_CONTROL_CONTINUE = (3),
1271  SERVICE_CONTROL_INTERROGATE = (4),
1272  SERVICE_CONTROL_SHUTDOWN = (5),
1273  IMAGE_BITMAP = (0),
1274  IMAGE_CURSOR = (2),
1275  IMAGE_ENHMETAFILE = (1),
1276  IMAGE_ICON = (1),
1277  LR_COPYDELETEORG = (8),
1278  LR_COPYRETURNORG = (4),
1279  LR_MONOCHROME = (1),
1280  LR_CREATEDIBSECTION = (8192),
1281  LR_DEFAULTSIZE = (64),
1282  DF_ALLOWOTHERACCOUNTHOOK = (0x1),
1283  DESKTOP_CREATEMENU = (0x4),
1284  DESKTOP_CREATEWINDOW = (0x2),
1285  DESKTOP_ENUMERATE = (0x40),
1286  DESKTOP_HOOKCONTROL = (0x8),
1287  DESKTOP_JOURNALPLAYBACK = (0x20),
1288  DESKTOP_JOURNALRECORD = (0x10),
1289  DESKTOP_READOBJECTS = (0x1),
1290  DESKTOP_SWITCHDESKTOP = (0x100),
1291  DESKTOP_WRITEOBJECTS = (0x80),
1292  WSF_VISIBLE = (0x1),
1293  CBM_INIT = (0x4),
1294  DIB_PAL_COLORS = (1),
1295  DIB_RGB_COLORS = (0),
1296  GENERIC_READ = (0x80000000),
1297  GENERIC_WRITE = (0x40000000),
1298  GENERIC_EXECUTE = (0x20000000),
1299  FILE_READ_DATA = (0x0001),
1300  FILE_LIST_DIRECTORY = (0x0001),
1301  FILE_WRITE_DATA = (0x0002),
1302  FILE_ADD_FILE = (0x0002),
1303  FILE_APPEND_DATA = (0x0004),
1304  FILE_ADD_SUBDIRECTORY = (0x0004),
1305  FILE_CREATE_PIPE_INSTANCE = (0x0004),
1306  FILE_READ_EA = (0x0008),
1307  FILE_READ_PROPERTIES = (FILE_READ_EA),
1308  FILE_WRITE_EA = (0x0010),
1309  FILE_WRITE_PROPERTIES = (FILE_WRITE_EA),
1310  FILE_EXECUTE = (0x0020),
1311  FILE_TRAVERSE = (0x0020),
1312  FILE_DELETE_CHILD = (0x0040),
1313  FILE_READ_ATTRIBUTES = (0x0080),
1314  FILE_WRITE_ATTRIBUTES = (0x0100),
1315  FILE_SHARE_DELETE = (4),
1316  FILE_SHARE_READ = (1),
1317  FILE_SHARE_WRITE = (2),
1318  CONSOLE_TEXTMODE_BUFFER = (1),
1319  CREATE_NEW = (1),
1320  CREATE_ALWAYS = (2),
1321  OPEN_EXISTING = (3),
1322  OPEN_ALWAYS = (4),
1323  TRUNCATE_EXISTING = (5),
1324  INVALID_FILE_ATTRIBUTE = (-1),
1325  FILE_ATTRIBUTE_ARCHIVE = (32),
1326  FILE_ATTRIBUTE_COMPRESSED = (2048),
1327  FILE_ATTRIBUTE_NORMAL = (128),
1328  FILE_ATTRIBUTE_DIRECTORY = (16),
1329  FILE_ATTRIBUTE_HIDDEN = (2),
1330  FILE_ATTRIBUTE_READONLY = (1),
1331  FILE_ATTRIBUTE_SYSTEM = (4),
1332  FILE_ATTRIBUTE_TEMPORARY = (256),
1333  FILE_FLAG_WRITE_THROUGH = (2147483648),
1334  FILE_FLAG_OVERLAPPED = (1073741824),
1335  FILE_FLAG_NO_BUFFERING = (536870912),
1336  FILE_FLAG_RANDOM_ACCESS = (268435456),
1337  FILE_FLAG_SEQUENTIAL_SCAN = (134217728),
1338  FILE_FLAG_DELETE_ON_CLOSE = (67108864),
1339  FILE_FLAG_BACKUP_SEMANTICS = (33554432),
1340  FILE_FLAG_POSIX_SEMANTICS = (16777216),
1341  SECURITY_ANONYMOUS = (0),
1342  SECURITY_IDENTIFICATION = (65536),
1343  SECURITY_IMPERSONATION = (131072),
1344  SECURITY_DELEGATION = (196608),
1345  SECURITY___FILE___TRACKING = (262144),
1346  SECURITY_EFFECTIVE_ONLY = (524288),
1347  SECURITY_SQOS_PRESENT = (1048576),
1348  SEC_COMMIT = (134217728),
1349  SEC_IMAGE = (16777216),
1350  SEC_NOCACHE = (268435456),
1351  SEC_RESERVE = (67108864),
1352  PAGE_READONLY = (2),
1353  PAGE_READWRITE = (4),
1354  PAGE_WRITECOPY = (8),
1355  PAGE_EXECUTE = (16),
1356  PAGE_EXECUTE_READ = (32),
1357  PAGE_EXECUTE_READWRITE = (64),
1358  PAGE_EXECUTE_WRITECOPY = (128),
1359  PAGE_GUARD = (256),
1360  PAGE_NOACCESS = (1),
1361  PAGE_NOCACHE = (512),
1362  MEM_COMMIT = (4096),
1363  MEM_FREE = (65536),
1364  MEM_RESERVE = (8192),
1365  MEM_IMAGE = (16777216),
1366  MEM_MAPPED = (262144),
1367  MEM_PRIVATE = (131072),
1368  MEM_DECOMMIT = (16384),
1369  MEM_RELEASE = (32768),
1370  MEM_TOP_DOWN = (1048576),
1371  EXCEPTION_GUARD_PAGE = (0x80000001),
1372  SECTION_EXTEND_SIZE = (0x10),
1373  SECTION_MAP_READ = (0x4),
1374  SECTION_MAP_WRITE = (0x2),
1375  SECTION_QUERY = (0x1),
1376  SECTION_ALL_ACCESS = (0xf001f),
1377  FW_DONTCARE = (0),
1378  FW_THIN = (100),
1379  FW_EXTRALIGHT = (200),
1380  FW_LIGHT = (300),
1381  FW_NORMAL = (400),
1382  FW_REGULAR = (FW_NORMAL),
1383  FW_MEDIUM = (500),
1384  FW_SEMIBOLD = (600),
1385  FW_BOLD = (700),
1386  FW_EXTRABOLD = (800),
1387  FW_HEAVY = (900),
1388  ANSI_CHARSET = (0),
1389  DEFAULT_CHARSET = (1),
1390  SYMBOL_CHARSET = (2),
1391  SHIFTJIS_CHARSET = (128),
1392  HANGEUL_CHARSET = (129),
1393  GB2312_CHARSET = (134),
1394  CHINESEBIG5_CHARSET = (136),
1395  GREEK_CHARSET = (161),
1396  TURKISH_CHARSET = (162),
1397  HEBREW_CHARSET = (177),
1398  ARABIC_CHARSET = (178),
1399  BALTIC_CHARSET = (186),
1400  RUSSIAN_CHARSET = (204),
1401  THAI_CHARSET = (222),
1402  EASTEUROPE_CHARSET = (238),
1403  OEM_CHARSET = (255),
1404  OUT_DEFAULT_PRECIS = (0),
1405  OUT_STRING_PRECIS = (1),
1406  OUT_CHARACTER_PRECIS = (2),
1407  OUT_STROKE_PRECIS = (3),
1408  OUT_TT_PRECIS = (4),
1409  OUT_DEVICE_PRECIS = (5),
1410  OUT_RASTER_PRECIS = (6),
1411  OUT_TT_ONLY_PRECIS = (7),
1412  OUT_OUTLINE_PRECIS = (8),
1413  CLIP_DEFAULT_PRECIS = (0),
1414  CLIP_CHARACTER_PRECIS = (1),
1415  CLIP_STROKE_PRECIS = (2),
1416  CLIP_MASK = (15),
1417  CLIP_LH_ANGLES = (16),
1418  CLIP_TT_ALWAYS = (32),
1419  CLIP_EMBEDDED = (128),
1420  DEFAULT_QUALITY = (0),
1421  DRAFT_QUALITY = (1),
1422  PROOF_QUALITY = (2),
1423  DEFAULT_PITCH = (0),
1424  FIXED_PITCH = (1),
1425  VARIABLE_PITCH = (2),
1426  FF_DECORATIVE = (80),
1427  FF_DONTCARE = (0),
1428  FF_MODERN = (48),
1429  FF_ROMAN = (16),
1430  FF_SCRIPT = (64),
1431  FF_SWISS = (32),
1432  HS_BDIAGONAL = (3),
1433  HS_CROSS = (4),
1434  HS_DIAGCROSS = (5),
1435  HS_FDIAGONAL = (2),
1436  HS_HORIZONTAL = (0),
1437  HS_VERTICAL = (1),
1438  LR_DEFAULTCOLOR = (0),
1439  LR_LOADREALSIZE = (128),
1440  MAILSLOT_WAIT_FOREVER = (0xffffffff),
1441  MAILSLOT_NO_MESSAGE = (0xffffffff),
1442  CMB_MASKED = (2),
1443  PIPE_ACCESS_DUPLEX = (3),
1444  PIPE_ACCESS_INBOUND = (1),
1445  PIPE_ACCESS_OUTBOUND = (2),
1446  WRITE_DAC = (0x40000),
1447  WRITE_OWNER = (0x80000),
1448  ACCESS_SYSTEM_SECURITY = (0x1000000),
1449  PIPE_TYPE_BYTE = (0),
1450  PIPE_TYPE_MESSAGE = (4),
1451  PIPE_READMODE_BYTE = (0),
1452  PIPE_READMODE_MESSAGE = (2),
1453  PIPE_WAIT = (0),
1454  PIPE_NOWAIT = (1),
1455  PS_GEOMETRIC = (65536),
1456  PS_COSMETIC = (0),
1457  PS_ALTERNATE = (8),
1458  PS_SOLID = (0),
1459  PS_DASH = (1),
1460  PS_DOT = (2),
1461  PS_DASHDOT = (3),
1462  PS_DASHDOTDOT = (4),
1463  PS_NULL = (5),
1464  PS_USERSTYLE = (7),
1465  PS_INSIDEFRAME = (6),
1466  PS_ENDCAP_ROUND = (0),
1467  PS_ENDCAP_SQUARE = (256),
1468  PS_ENDCAP_FLAT = (512),
1469  PS_JOIN_BEVEL = (4096),
1470  PS_JOIN_MITER = (8192),
1471  PS_JOIN_ROUND = (0),
1472  PS_STYLE_MASK = (15),
1473  PS_ENDCAP_MASK = (3840),
1474  PS_TYPE_MASK = (983040),
1475  ALTERNATE = (1),
1476  WINDING = (2),
1477  CREATE_DEFAULT_ERROR_MODE = (67108864),
1478  CREATE_NEW_CONSOLE = (16),
1479  CREATE_NEW_PROCESS_GROUP = (512),
1480  CREATE_NO_WINDOW = (0x8000000),
1481  CREATE_SEPARATE_WOW_VDM = (2048),
1482  CREATE_SUSPENDED = (4),
1483  CREATE_UNICODE_ENVIRONMENT = (1024),
1484  DEBUG_PROCESS = (1),
1485  DEBUG_ONLY_THIS_PROCESS = (2),
1486  DETACHED_PROCESS = (8),
1487  HIGH_PRIORITY_CLASS = (128),
1488  IDLE_PRIORITY_CLASS = (64),
1489  NORMAL_PRIORITY_CLASS = (32),
1490  REALTIME_PRIORITY_CLASS = (256),
1491  SERVICE_ALL_ACCESS = (0xf01ff),
1492  SERVICE_CHANGE_CONFIG = (2),
1493  SERVICE_ENUMERATE_DEPENDENTS = (8),
1494  SERVICE_INTERROGATE = (128),
1495  SERVICE_PAUSE_CONTINUE = (64),
1496  SERVICE_QUERY_CONFIG = (1),
1497  SERVICE_QUERY_STATUS = (4),
1498  SERVICE_START = (16),
1499  SERVICE_STOP = (32),
1500  SERVICE_USER_DEFINED_CONTROL = (256),
1501  SERVICE_DELETE = (0x10000),
1502  SERVICE_READ_CONTROL = (0x20000),
1503  SERVICE_GENERIC_EXECUTE = (0x20000000),
1504  SERVICE_ERROR_IGNORE = (0),
1505  SERVICE_ERROR_NORMAL = (1),
1506  SERVICE_ERROR_SEVERE = (2),
1507  SERVICE_ERROR_CRITICAL = (3),
1508  TAPE_FIXED_PARTITIONS = (0),
1509  TAPE_INITIATOR_PARTITIONS = (0x2),
1510  TAPE_SELECT_PARTITIONS = (0x1),
1511  TAPE_FILEMARKS = (0x1),
1512  TAPE_LONG_FILEMARKS = (0x3),
1513  TAPE_SETMARKS = (0),
1514  TAPE_SHORT_FILEMARKS = (0x2),
1515  CW_USEDEFAULT = (0x80000000),
1516  WS_BORDER = (0x800000),
1517  WS_CAPTION = (0xc00000),
1518  WS_CHILD = (0x40000000),
1519  WS_CHILDWINDOW = (0x40000000),
1520  WS_CLIPCHILDREN = (0x2000000),
1521  WS_CLIPSIBLINGS = (0x4000000),
1522  WS_DISABLED = (0x8000000),
1523  WS_DLGFRAME = (0x400000),
1524  WS_GROUP = (0x20000),
1525  WS_HSCROLL = (0x100000),
1526  WS_ICONIC = (0x20000000),
1527  WS_MAXIMIZE = (0x1000000),
1528  WS_MAXIMIZEBOX = (0x10000),
1529  WS_MINIMIZE = (0x20000000),
1530  WS_MINIMIZEBOX = (0x20000),
1531  WS_OVERLAPPED = (0),
1532  WS_OVERLAPPEDWINDOW = (0xcf0000),
1533  WS_POPUP = (0x80000000),
1534  WS_POPUPWINDOW = (0x80880000),
1535  WS_SIZEBOX = (0x40000),
1536  WS_SYSMENU = (0x80000),
1537  WS_TABSTOP = (0x10000),
1538  WS_THICKFRAME = (0x40000),
1539  WS_TILED = (0),
1540  WS_TILEDWINDOW = (0xcf0000),
1541  WS_VISIBLE = (0x10000000),
1542  WS_VSCROLL = (0x200000),
1543  MDIS_ALLCHILDSTYLES = (0x1),
1544  BS_3STATE = (0x5),
1545  BS_AUTO3STATE = (0x6),
1546  BS_AUTOCHECKBOX = (0x3),
1547  BS_AUTORADIOBUTTON = (0x9),
1548  BS_BITMAP = (0x80),
1549  BS_BOTTOM = (0x800),
1550  BS_CENTER = (0x300),
1551  BS_CHECKBOX = (0x2),
1552  BS_DEFPUSHBUTTON = (0x1),
1553  BS_GROUPBOX = (0x7),
1554  BS_ICON = (0x40),
1555  BS_LEFT = (0x100),
1556  BS_LEFTTEXT = (0x20),
1557  BS_MULTILINE = (0x2000),
1558  BS_NOTIFY = (0x4000),
1559  BS_OWNERDRAW = (0xb),
1560  BS_PUSHBUTTON = (0),
1561  BS_PUSHLIKE = (0x1000),
1562  BS_RADIOBUTTON = (0x4),
1563  BS_RIGHT = (0x200),
1564  BS_RIGHTBUTTON = (0x20),
1565  BS_TEXT = (0),
1566  BS_TOP = (0x400),
1567  BS_USERBUTTON = (0x8),
1568  BS_VCENTER = (0xc00),
1569  CBS_AUTOHSCROLL = (0x40),
1570  CBS_DISABLENOSCROLL = (0x800),
1571  CBS_DROPDOWN = (0x2),
1572  CBS_DROPDOWNLIST = (0x3),
1573  CBS_HASSTRINGS = (0x200),
1574  CBS_LOWERCASE = (0x4000),
1575  CBS_NOINTEGRALHEIGHT = (0x400),
1576  CBS_OEMCONVERT = (0x80),
1577  CBS_OWNERDRAWFIXED = (0x10),
1578  CBS_OWNERDRAWVARIABLE = (0x20),
1579  CBS_SIMPLE = (0x1),
1580  CBS_SORT = (0x100),
1581  CBS_UPPERCASE = (0x2000),
1582  ES_AUTOHSCROLL = (0x80),
1583  ES_AUTOVSCROLL = (0x40),
1584  ES_CENTER = (0x1),
1585  ES_LEFT = (0),
1586  ES_LOWERCASE = (0x10),
1587  ES_MULTILINE = (0x4),
1588  ES_NOHIDESEL = (0x100),
1589  ES_NUMBER = (0x2000),
1590  ES_OEMCONVERT = (0x400),
1591  ES_PASSWORD = (0x20),
1592  ES_READONLY = (0x800),
1593  ES_RIGHT = (0x2),
1594  ES_UPPERCASE = (0x8),
1595  ES_WANTRETURN = (0x1000),
1596  LBS_DISABLENOSCROLL = (0x1000),
1597  LBS_EXTENDEDSEL = (0x800),
1598  LBS_HASSTRINGS = (0x40),
1599  LBS_MULTICOLUMN = (0x200),
1600  LBS_MULTIPLESEL = (0x8),
1601  LBS_NODATA = (0x2000),
1602  LBS_NOINTEGRALHEIGHT = (0x100),
1603  LBS_NOREDRAW = (0x4),
1604  LBS_NOSEL = (0x4000),
1605  LBS_NOTIFY = (0x1),
1606  LBS_OWNERDRAWFIXED = (0x10),
1607  LBS_OWNERDRAWVARIABLE = (0x20),
1608  LBS_SORT = (0x2),
1609  LBS_STANDARD = (0xa00003),
1610  LBS_USETABSTOPS = (0x80),
1611  LBS_WANTKEYBOARDINPUT = (0x400),
1612  SBS_BOTTOMALIGN = (0x4),
1613  SBS_HORZ = (0),
1614  SBS_LEFTALIGN = (0x2),
1615  SBS_RIGHTALIGN = (0x4),
1616  SBS_SIZEBOX = (0x8),
1617  SBS_SIZEBOXBOTTOMRIGHTALIGN = (0x4),
1618  SBS_SIZEBOXTOPLEFTALIGN = (0x2),
1619  SBS_SIZEGRIP = (0x10),
1620  SBS_TOPALIGN = (0x2),
1621  SBS_VERT = (0x1),
1622  SS_BITMAP = (0xe),
1623  SS_BLACKFRAME = (0x7),
1624  SS_BLACKRECT = (0x4),
1625  SS_CENTER = (0x1),
1626  SS_CENTERIMAGE = (0x200),
1627  SS_ENHMETAFILE = (0xf),
1628  SS_ETCHEDFRAME = (0x12),
1629  SS_ETCHEDHORZ = (0x10),
1630  SS_ETCHEDVERT = (0x11),
1631  SS_GRAYFRAME = (0x8),
1632  SS_GRAYRECT = (0x5),
1633  SS_ICON = (0x3),
1634  SS_LEFT = (0),
1635  SS_LEFTNOWORDWRAP = (0xc),
1636  SS_NOPREFIX = (0x80),
1637  SS_NOTIFY = (0x100),
1638  SS_OWNERDRAW = (0xd),
1639  SS_REALSIZEIMAGE = (0x800),
1640  SS_RIGHT = (0x2),
1641  SS_RIGHTJUST = (0x400),
1642  SS_SIMPLE = (0xb),
1643  SS_SUNKEN = (0x1000),
1644  SS_USERITEM = (0xa),
1645  SS_WHITEFRAME = (0x9),
1646  SS_WHITERECT = (0x6),
1647  DS_3DLOOK = (0x4),
1648  DS_ABSALIGN = (0x1),
1649  DS_CENTER = (0x800),
1650  DS_CENTERMOUSE = (0x1000),
1651  DS___FILE__HELP = (0x2000),
1652  DS_CONTROL = (0x400),
1653  DS_FIXEDSYS = (0x8),
1654  DS_LOCALEDIT = (0x20),
1655  DS_MODALFRAME = (0x80),
1656  DS_NOFAILCREATE = (0x10),
1657  DS_NOIDLEMSG = (0x100),
1658  DS_SETFONT = (0x40),
1659  DS_SETFOREGROUND = (0x200),
1660  DS_SYSMODAL = (0x2),
1661  WS_EX_ACCEPTFILES = (0x10),
1662  WS_EX_APPWINDOW = (0x40000),
1663  WS_EX_CLIENTEDGE = (0x200),
1664  WS_EX___FILE__HELP = (0x400),
1665  WS_EX_CONTROLPARENT = (0x10000),
1666  WS_EX_DLGMODALFRAME = (0x1),
1667  WS_EX_LEFT = (0),
1668  WS_EX_LEFTSCROLLBAR = (0x4000),
1669  WS_EX_LTRREADING = (0),
1670  WS_EX_MDICHILD = (0x40),
1671  WS_EX_NOPARENTNOTIFY = (0x4),
1672  WS_EX_OVERLAPPEDWINDOW = (0x300),
1673  WS_EX_PALETTEWINDOW = (0x188),
1674  WS_EX_RIGHT = (0x1000),
1675  WS_EX_RIGHTSCROLLBAR = (0),
1676  WS_EX_RTLREADING = (0x2000),
1677  WS_EX_STATICEDGE = (0x20000),
1678  WS_EX_TOOLWINDOW = (0x80),
1679  WS_EX_TOPMOST = (0x8),
1680  WS_EX_TRANSPARENT = (0x20),
1681  WS_EX_WINDOWEDGE = (0x100),
1682  WINSTA_ACCESSCLIPBOARD = (0x4),
1683  WINSTA_ACCESSGLOBALATOMS = (0x20),
1684  WINSTA_CREATEDESKTOP = (0x8),
1685  WINSTA_ENUMDESKTOPS = (0x1),
1686  WINSTA_ENUMERATE = (0x100),
1687  WINSTA_EXITWINDOWS = (0x40),
1688  WINSTA_READATTRIBUTES = (0x2),
1689  WINSTA_READSCREEN = (0x200),
1690  WINSTA_WRITEATTRIBUTES = (0x10),
1691  WH_CALLWNDPROC = (4),
1692  WH_CALLWNDPROCRET = (12),
1693  WH_CBT = (5),
1694  WH_DEBUG = (9),
1695  WH_GETMESSAGE = (3),
1696  WH_JOURNALPLAYBACK = (1),
1697  WH_JOURNALRECORD = (0),
1698  WH_KEYBOARD = (2),
1699  WH_MOUSE = (7),
1700  WH_MSGFILTER = -((1)),
1701  WH_SHELL = (10),
1702  WH_SYSMSGFILTER = (6),
1703  WH_FOREGROUNDIDLE = (11),
1704  DDD_RAW_TARGET_PATH = (1),
1705  DDD_REMOVE_DEFINITION = (2),
1706  DDD_EXACT_MATCH_ON_REMOVE = (4),
1707  DC_BINNAMES = (12),
1708  DC_BINS = (6),
1709  DC_COPIES = (18),
1710  DC_DRIVER = (11),
1711  DC_DATATYPE_PRODUCED = (21),
1712  DC_DUPLEX = (7),
1713  DC_EMF_COMPLIANT = (20),
1714  DC_ENUMRESOLUTIONS = (13),
1715  DC_EXTRA = (9),
1716  DC_FIELDS = (1),
1717  DC_FILEDEPENDENCIES = (14),
1718  DC_MAXEXTENT = (5),
1719  DC_MINEXTENT = (4),
1720  DC_ORIENTATION = (17),
1721  DC_PAPERNAMES = (16),
1722  DC_PAPERS = (2),
1723  DC_PAPERSIZE = (3),
1724  DC_SIZE = (8),
1725  DC_TRUETYPE = (15),
1726  DCTT_BITMAP = (0x1),
1727  DCTT_DOWNLOAD = (0x2),
1728  DCTT_SUBDEV = (0x4),
1729  DC_VERSION = (10),
1730  DC_BINADJUST = (19),
1731  DDL_ARCHIVE = (32),
1732  DDL_DIRECTORY = (16),
1733  DDL_DRIVES = (16384),
1734  DDL_EXCLUSIVE = (32768),
1735  DDL_HIDDEN = (2),
1736  DDL_READONLY = (1),
1737  DDL_READWRITE = (0),
1738  DDL_SYSTEM = (4),
1739  DDL_POSTMSGS = (8192),
1740  DLL_PROCESS_ATTACH = (1),
1741  DLL_THREAD_ATTACH = (2),
1742  DLL_PROCESS_DETACH = (0),
1743  DLL_THREAD_DETACH = (3),
1744  DM_IN_BUFFER = (8),
1745  DM_MODIFY = (8),
1746  DM_IN_PROMPT = (4),
1747  DM_PROMPT = (4),
1748  DM_OUT_BUFFER = (2),
1749  DM_COPY = (2),
1750  DM_UPDATE = (1),
1751  IDANI_OPEN = (1),
1752  IDANI_CLOSE = (2),
1753  DC_ACTIVE = (1),
1754  DC_SMALLCAP = (2),
1755  BDR_RAISEDINNER = (4),
1756  BDR_SUNKENINNER = (8),
1757  BDR_RAISEDOUTER = (1),
1758  BDR_SUNKENOUTER = (1),
1759  EDGE_BUMP = (9),
1760  EDGE_ETCHED = (6),
1761  EDGE_RAISED = (5),
1762  EDGE_SUNKEN = (10),
1763  BF_ADJUST = (8192),
1764  BF_BOTTOM = (8),
1765  BF_BOTTOMLEFT = (9),
1766  BF_BOTTOMRIGHT = (12),
1767  BF_DIAGONAL = (16),
1768  BF_DIAGONAL_ENDBOTTOMLEFT = (25),
1769  BF_DIAGONAL_ENDBOTTOMRIGHT = (28),
1770  BF_DIAGONAL_ENDTOPLEFT = (19),
1771  BF_DIAGONAL_ENDTOPRIGHT = (22),
1772  BF_FLAT = (16384),
1773  BF_LEFT = (1),
1774  BF_MIDDLE = (2048),
1775  BF_MONO = (32768),
1776  BF_RECT = (15),
1777  BF_RIGHT = (4),
1778  BF_SOFT = (4096),
1779  BF_TOP = (2),
1780  BF_TOPLEFT = (3),
1781  BF_TOPRIGHT = (6),
1782  DFC_BUTTON = (4),
1783  DFC_CAPTION = (1),
1784  DFC_MENU = (2),
1785  DFC_SCROLL = (3),
1786  DFCS_BUTTON3STATE = (8),
1787  DFCS_BUTTONCHECK = (0),
1788  DFCS_BUTTONPUSH = (16),
1789  DFCS_BUTTONRADIO = (4),
1790  DFCS_BUTTONRADIOIMAGE = (1),
1791  DFCS_BUTTONRADIOMASK = (2),
1792  DFCS_CAPTIONCLOSE = (0),
1793  DFCS_CAPTIONHELP = (4),
1794  DFCS_CAPTIONMAX = (2),
1795  DFCS_CAPTIONMIN = (1),
1796  DFCS_CAPTIONRESTORE = (3),
1797  DFCS_MENUARROW = (0),
1798  DFCS_MENUBULLET = (2),
1799  DFCS_MENUCHECK = (1),
1800  DFCS_SCROLLCOMBOBOX = (5),
1801  DFCS_SCROLLDOWN = (1),
1802  DFCS_SCROLLLEFT = (2),
1803  DFCS_SCROLLRIGHT = (3),
1804  DFCS_SCROLLSIZEGRIP = (8),
1805  DFCS_SCROLLUP = (0),
1806  DFCS_ADJUSTRECT = (8192),
1807  DFCS_CHECKED = (1024),
1808  DFCS_FLAT = (16384),
1809  DFCS_INACTIVE = (256),
1810  DFCS_MONO = (32768),
1811  DFCS_PUSHED = (512),
1812  DI_COMPAT = (4),
1813  DI_DEFAULTSIZE = (8),
1814  DI_IMAGE = (2),
1815  DI_MASK = (1),
1816  DI_NORMAL = (3),
1817  DST_BITMAP = (4),
1818  DST_COMPLEX = (0),
1819  DST_ICON = (3),
1820  DST_PREFIXTEXT = (2),
1821  DST_TEXT = (1),
1822  DSS_NORMAL = (0),
1823  DSS_UNION = (16),
1824  DSS_DISABLED = (32),
1825  DSS_MONO = (128),
1826  SBT_NOBORDERS = (256),
1827  SBT_OWNERDRAW = (4096),
1828  SBT_POPOUT = (512),
1829  SBT_RTLREADING = (1024),
1830  DT_BOTTOM = (8),
1831  DT_CALCRECT = (1024),
1832  DT_CENTER = (1),
1833  DT_EDITCONTROL = (8192),
1834  DT_END_ELLIPSIS = (32768),
1835  DT_PATH_ELLIPSIS = (16384),
1836  DT_EXPANDTABS = (64),
1837  DT_EXTERNALLEADING = (512),
1838  DT_LEFT = (0),
1839  DT_MODIFYSTRING = (65536),
1840  DT_NOCLIP = (256),
1841  DT_NOPREFIX = (2048),
1842  DT_RIGHT = (2),
1843  DT_RTLREADING = (131072),
1844  DT_SINGLELINE = (32),
1845  DT_TABSTOP = (128),
1846  DT_TOP = (0),
1847  DT_VCENTER = (4),
1848  DT_WORDBREAK = (16),
1849  DT_INTERNAL = (4096),
1850  DUPLICATE_CLOSE_SOURCE = (1),
1851  DUPLICATE_SAME_ACCESS = (2),
1852  FILE_MAP_ALL_ACCESS = (0xf001f),
1853  FILE_MAP_READ = (4),
1854  FILE_MAP_WRITE = (2),
1855  FILE_MAP_COPY = (1),
1856  FILE_MAP_EXECUTE = (0x20),
1857  MUTEX_ALL_ACCESS = (0x1f0001),
1858  MUTEX_MODIFY_STATE = (1),
1859  SYNCHRONIZE = (0x100000),
1860  SEMAPHORE_ALL_ACCESS = (0x1f0003),
1861  SEMAPHORE_MODIFY_STATE = (2),
1862  EVENT_ALL_ACCESS = (0x1f0003),
1863  EVENT_MODIFY_STATE = (2),
1864  KEY_ALL_ACCESS = (0xf003f),
1865  KEY_CREATE_LINK = (32),
1866  KEY_CREATE_SUB_KEY = (4),
1867  KEY_ENUMERATE_SUB_KEYS = (8),
1868  KEY_EXECUTE = (0x20019),
1869  KEY_NOTIFY = (16),
1870  KEY_QUERY_VALUE = (1),
1871  KEY_READ = (0x20019),
1872  KEY_SET_VALUE = (2),
1873  KEY_WRITE = (0x20006),
1874  PROCESS_ALL_ACCESS = (0x1f0fff),
1875  PROCESS_CREATE_PROCESS = (128),
1876  PROCESS_CREATE_THREAD = (2),
1877  PROCESS_DUP_HANDLE = (64),
1878  PROCESS_QUERY_INFORMATION = (1024),
1879  PROCESS_SET_INFORMATION = (512),
1880  PROCESS_TERMINATE = (1),
1881  PROCESS_VM_OPERATION = (8),
1882  PROCESS_VM_READ = (16),
1883  PROCESS_VM_WRITE = (32),
1884  THREAD_ALL_ACCESS = (0x1f03ff),
1885  THREAD_DIRECT_IMPERSONATION = (512),
1886  THREAD_GET___FILE__ = (8),
1887  THREAD_IMPERSONATE = (256),
1888  THREAD_QUERY_INFORMATION = (64),
1889  THREAD_SET___FILE__ = (16),
1890  THREAD_SET_INFORMATION = (32),
1891  THREAD_SET_THREAD_TOKEN = (128),
1892  THREAD_SUSPEND_RESUME = (2),
1893  THREAD_TERMINATE = (1),
1894  WB_ISDELIMITER = (2),
1895  WB_LEFT = (0),
1896  WB_RIGHT = (1),
1897  SB_BOTH = (3),
1898  SB_CTL = (2),
1899  SB_HORZ = (0),
1900  SB_VERT = (1),
1901  ESB_DISABLE_BOTH = (3),
1902  ESB_DISABLE_DOWN = (2),
1903  ESB_DISABLE_LEFT = (1),
1904  ESB_DISABLE_LTUP = (1),
1905  ESB_DISABLE_RIGHT = (2),
1906  ESB_DISABLE_RTDN = (2),
1907  ESB_DISABLE_UP = (1),
1908  ESB_ENABLE_BOTH = (0),
1909  SB_LINEUP = (0),
1910  SB_LINEDOWN = (1),
1911  SB_LINELEFT = (0),
1912  SB_LINERIGHT = (1),
1913  SB_PAGEUP = (2),
1914  SB_PAGEDOWN = (3),
1915  SB_PAGELEFT = (2),
1916  SB_PAGERIGHT = (3),
1917  SB_THUMBPOSITION = (4),
1918  SB_THUMBTRACK = (5),
1919  SB_ENDSCROLL = (8),
1920  SB_LEFT = (6),
1921  SB_RIGHT = (7),
1922  SB_BOTTOM = (7),
1923  SB_TOP = (6),
1924  ENUM_ALL_CALENDARS = -((1)),
1925  DATE_SHORTDATE = (1),
1926  DATE_LONGDATE = (2),
1927  SERVICE_ACTIVE = (1),
1928  SERVICE_INACTIVE = (2),
1929  DEVICE_FONTTYPE = (2),
1930  RASTER_FONTTYPE = (1),
1931  TRUETYPE_FONTTYPE = (4),
1932  OBJ_BRUSH = (2),
1933  OBJ_PEN = (1),
1934  OBJ_PAL = (5),
1935  OBJ_FONT = (6),
1936  OBJ_BITMAP = (7),
1937  OBJ_EXTPEN = (11),
1938  OBJ_REGION = (8),
1939  OBJ_DC = (3),
1940  OBJ_MEMDC = (10),
1941  OBJ_METAFILE = (9),
1942  OBJ_METADC = (4),
1943  OBJ_ENHMETAFILE = (13),
1944  OBJ_ENHMETADC = (12),
1945  SERVICE_WIN32 = (48),
1946  SERVICE_DRIVER = (11),
1947  CP_INSTALLED = (1),
1948  CP_SUPPORTED = (2),
1949  LCID_INSTALLED = (1),
1950  LCID_SUPPORTED = (2),
1951  TAPE_ERASE_LONG = (0x1),
1952  TAPE_ERASE_SHORT = (0),
1953  SP_ERROR = -((1)),
1954  SP_OUTOFDISK = -((4)),
1955  SP_OUTOFMEMORY = -((5)),
1956  SP_USERABORT = -((3)),
1957  PHYSICALWIDTH = (110),
1958  PHYSICALHEIGHT = (111),
1959  PHYSICALOFFSETX = (112),
1960  PHYSICALOFFSETY = (113),
1961  SCALINGFACTORX = (114),
1962  SCALINGFACTORY = (115),
1963  QUERYESCSUPPORT = (8),
1964  cABORTDOC = (2),
1965  cENDDOC = (11),
1966  GETPHYSPAGESIZE = (12),
1967  GETPRINTINGOFFSET = (13),
1968  GETSCALINGFACTOR = (14),
1969  NEWFRAME = (1),
1970  NEXTBAND = (3),
1971  PASSTHROUGH = (19),
1972  cSETABORTPROC = (9),
1973  cSTARTDOC = (10),
1974  CLRDTR = (6),
1975  CLRRTS = (4),
1976  SETDTR = (5),
1977  SETRTS = (3),
1978  SETXOFF = (1),
1979  SETXON = (2),
1980  SETBREAK = (8),
1981  CLRBREAK = (9),
1982  EWX_FORCE = (4),
1983  EWX_LOGOFF = (0),
1984  EWX_POWEROFF = (8),
1985  EWX_REBOOT = (2),
1986  EWX_SHUTDOWN = (1),
1987  FLOODFILLBORDER = (0),
1988  FLOODFILLSURFACE = (1),
1989  ETO_CLIPPED = (4),
1990  ETO_GLYPH_INDEX = (16),
1991  ETO_OPAQUE = (2),
1992  ETO_RTLREADING = (128),
1993  FOREGROUND_BLUE = (1),
1994  FOREGROUND_GREEN = (2),
1995  FOREGROUND_RED = (4),
1996  FOREGROUND_INTENSITY = (8),
1997  BACKGROUND_BLUE = (16),
1998  BACKGROUND_GREEN = (32),
1999  BACKGROUND_RED = (64),
2000  BACKGROUND_INTENSITY = (128),
2001  FILE_NOTIFY_CHANGE_FILE_NAME = (1),
2002  FILE_NOTIFY_CHANGE_DIR_NAME = (2),
2003  FILE_NOTIFY_CHANGE_ATTRIBUTES = (4),
2004  FILE_NOTIFY_CHANGE_SIZE = (8),
2005  FILE_NOTIFY_CHANGE_LAST_WRITE = (16),
2006  FILE_NOTIFY_CHANGE_SECURITY = (256),
2007  MAP_FOLDCZONE = (16),
2008  MAP_FOLDDIGITS = (128),
2009  MAP_PRECOMPOSED = (32),
2010  MAP_COMPOSITE = (64),
2011  HC_ACTION = (0),
2012  FORMAT_MESSAGE_ALLOCATE_BUFFER = (256),
2013  FORMAT_MESSAGE_IGNORE_INSERTS = (512),
2014  FORMAT_MESSAGE_FROM_STRING = (1024),
2015  FORMAT_MESSAGE_FROM_HMODULE = (2048),
2016  FORMAT_MESSAGE_FROM_SYSTEM = (4096),
2017  FORMAT_MESSAGE_ARGUMENT_ARRAY = (8192),
2018  FORMAT_MESSAGE_MAX_WIDTH_MASK = (255),
2019  GDICOMMENT_WINDOWS_METAFILE = -((2147483647)),
2020  GDICOMMENT_BEGINGROUP = (2),
2021  GDICOMMENT_ENDGROUP = (3),
2022  GDICOMMENT_MULTIFORMATS = (1073741828),
2023  GDICOMMENT_IDENTIFIER = (1128875079),
2024  CTRL_C_EVENT = (0),
2025  CTRL_BREAK_EVENT = (1),
2026  CTRL_CLOSE_EVENT = (2),
2027  CTRL_LOGOFF_EVENT = (5),
2028  CTRL_SHUTDOWN_EVENT = (6),
2029  AD_COUNTERCLOCKWISE = (1),
2030  AD_CLOCKWISE = (2),
2031  SCS_32BIT_BINARY = (0),
2032  SCS_DOS_BINARY = (1),
2033  SCS_OS216_BINARY = (5),
2034  SCS_PIF_BINARY = (3),
2035  SCS_POSIX_BINARY = (4),
2036  SCS_WOW_BINARY = (2),
2037  DCB_DISABLE = (8),
2038  DCB_ENABLE = (4),
2039  DCB_RESET = (1),
2040  DCB_SET = (3),
2041  DCB_ACCUMULATE = (2),
2042  GCP_DBCS = (1),
2043  GCP_ERROR = (0x8000),
2044  GCP_CLASSIN = (0x80000),
2045  GCP_DIACRITIC = (256),
2046  GCP_DISPLAYZWG = (0x400000),
2047  GCP_GLYPHSHAPE = (16),
2048  GCP_JUSTIFY = (0x10000),
2049  GCP_JUSTIFYIN = (0x200000),
2050  GCP_KASHIDA = (1024),
2051  GCP_LIGATE = (32),
2052  GCP_MAXEXTENT = (0x100000),
2053  GCP_NEUTRALOVERRIDE = (0x2000000),
2054  GCP_NUMERICOVERRIDE = (0x1000000),
2055  GCP_NUMERICSLATIN = (0x4000000),
2056  GCP_NUMERICSLOCAL = (0x8000000),
2057  GCP_REORDER = (2),
2058  GCP_SYMSWAPOFF = (0x800000),
2059  GCP_USEKERNING = (8),
2060  FLI_GLYPHS = (0x40000),
2061  FLI_MASK = (0x103b),
2062  GCW_ATOM = -((32)),
2063  GCL_CBCLSEXTRA = -((20)),
2064  GCL_CBWNDEXTRA = -((18)),
2065  GCL_HBRBACKGROUND = -((10)),
2066  GCL_HCURSOR = -((12)),
2067  GCL_HICON = -((14)),
2068  GCL_HICONSM = -((34)),
2069  GCL_HMODULE = -((16)),
2070  GCL_MENUNAME = -((8)),
2071  GCL_STYLE = -((26)),
2072  GCL_WNDPROC = -((24)),
2073  CF_BITMAP = (2),
2074  CF_DIB = (8),
2075  CF_PALETTE = (9),
2076  CF_ENHMETAFILE = (14),
2077  CF_METAFILEPICT = (3),
2078  CF_OEMTEXT = (7),
2079  CF_TEXT = (1),
2080  CF_UNICODETEXT = (13),
2081  CF_DIF = (5),
2082  CF_DSPBITMAP = (130),
2083  CF_DSPENHMETAFILE = (142),
2084  CF_DSPMETAFILEPICT = (131),
2085  CF_DSPTEXT = (129),
2086  CF_GDIOBJFIRST = (768),
2087  CF_GDIOBJLAST = (1023),
2088  CF_HDROP = (15),
2089  CF_LOCALE = (16),
2090  CF_OWNERDISPLAY = (128),
2091  CF_PENDATA = (10),
2092  CF_PRIVATEFIRST = (512),
2093  CF_PRIVATELAST = (767),
2094  CF_RIFF = (11),
2095  CF_SYLK = (4),
2096  CF_WAVE = (12),
2097  CF_TIFF = (6),
2098  EV_BREAK = (64),
2099  EV_CTS = (8),
2100  EV_DSR = (16),
2101  EV_ERR = (128),
2102  EV_EVENT1 = (2048),
2103  EV_EVENT2 = (4096),
2104  EV_PERR = (512),
2105  EV_RING = (256),
2106  EV_RLSD = (32),
2107  EV_RX80FULL = (1024),
2108  EV_RXCHAR = (1),
2109  EV_RXFLAG = (2),
2110  EV_TXEMPTY = (4),
2111  MS_CTS_ON = (0x10),
2112  MS_DSR_ON = (0x20),
2113  MS_RING_ON = (0x40),
2114  MS_RLSD_ON = (0x80),
2115  MAX_COMPUTERNAME_LENGTH = (15),
2116  ENABLE_LINE_INPUT = (2),
2117  ENABLE_ECHO_INPUT = (4),
2118  ENABLE_PROCESSED_INPUT = (1),
2119  ENABLE_WINDOW_INPUT = (8),
2120  ENABLE_MOUSE_INPUT = (16),
2121  ENABLE_PROCESSED_OUTPUT = (1),
2122  ENABLE_WRAP_AT_EOL_OUTPUT = (2),
2123  CP_ACP = (0),
2124  CP_MACCP = (2),
2125  CP_OEMCP = (1),
2126  CP_UTF8 = 65001,
2127  DATE_USE_ALT_CALENDAR = (4),
2128  DCX_WINDOW = (0x1),
2129  DCX_CACHE = (0x2),
2130  DCX_PARENTCLIP = (0x20),
2131  DCX_CLIPSIBLINGS = (0x10),
2132  DCX_CLIPCHILDREN = (0x8),
2133  DCX_NORESETATTRS = (0x4),
2134  DCX_LOCKWINDOWUPDATE = (0x400),
2135  DCX_EXCLUDERGN = (0x40),
2136  DCX_INTERSECTRGN = (0x80),
2137  DCX_VALIDATE = (0x200000),
2138  DRIVERVERSION = (0),
2139  TECHNOLOGY = (2),
2140  DT_PLOTTER = (0),
2141  DT_RASDISPLAY = (1),
2142  DT_RASPRINTER = (2),
2143  DT_RASCAMERA = (3),
2144  DT_CHARSTREAM = (4),
2145  DT_METAFILE = (5),
2146  DT_DISPFILE = (6),
2147  HORZSIZE = (4),
2148  VERTSIZE = (6),
2149  HORZRES = (8),
2150  VERTRES = (10),
2151  LOGPIXELSX = (88),
2152  LOGPIXELSY = (90),
2153  BITSPIXEL = (12),
2154  PLANES = (14),
2155  NUMBRUSHES = (16),
2156  NUMPENS = (18),
2157  NUMFONTS = (22),
2158  NUMCOLORS = (24),
2159  ASPECTX = (40),
2160  ASPECTY = (42),
2161  ASPECTXY = (44),
2162  PDEVICESIZE = (26),
2163  CLIPCAPS = (36),
2164  SIZEPALETTE = (104),
2165  NUMRESERVED = (106),
2166  COLORRES = (108),
2167  VREFRESH = (116),
2168  DESKTOPHORZRES = (118),
2169  DESKTOPVERTRES = (117),
2170  BLTALIGNMENT = (119),
2171  RASTERCAPS = (38),
2172  RC_BANDING = (2),
2173  RC_BITBLT = (1),
2174  RC_BITMAP64 = (8),
2175  RC_DI_BITMAP = (128),
2176  RC_DIBTODEV = (512),
2177  RC_FLOODFILL = (4096),
2178  RC_GDI20_OUTPUT = (16),
2179  RC_PALETTE = (256),
2180  RC_SCALING = (4),
2181  RC_STRETCHBLT = (2048),
2182  RC_STRETCHDIB = (8192),
2183  CURVECAPS = (28),
2184  CC_NONE = (0),
2185  CC_CIRCLES = (1),
2186  CC_PIE = (2),
2187  CC_CHORD = (4),
2188  CC_ELLIPSES = (8),
2189  CC_WIDE = (16),
2190  CC_STYLED = (32),
2191  CC_WIDESTYLED = (64),
2192  CC_INTERIORS = (128),
2193  CC_ROUNDRECT = (256),
2194  LINECAPS = (30),
2195  LC_NONE = (0),
2196  LC_POLYLINE = (2),
2197  LC_MARKER = (4),
2198  LC_POLYMARKER = (8),
2199  LC_WIDE = (16),
2200  LC_STYLED = (32),
2201  LC_WIDESTYLED = (64),
2202  LC_INTERIORS = (128),
2203  POLYGONALCAPS = (32),
2204  PC_NONE = (0),
2205  PC_POLYGON = (1),
2206  PC_RECTANGLE = (2),
2207  PC_WINDPOLYGON = (4),
2208  PC_SCANLINE = (8),
2209  PC_WIDE = (16),
2210  PC_STYLED = (32),
2211  PC_WIDESTYLED = (64),
2212  PC_INTERIORS = (128),
2213  TEXTCAPS = (34),
2214  TC_OP_CHARACTER = (1),
2215  TC_OP_STROKE = (2),
2216  TC_CP_STROKE = (4),
2217  TC_CR_90 = (8),
2218  TC_CR_ANY = (16),
2219  TC_SF_X_YINDEP = (32),
2220  TC_SA_DOUBLE = (64),
2221  TC_SA_INTEGER = (128),
2222  TC_SA_CONTIN = (256),
2223  TC_EA_DOUBLE = (512),
2224  TC_IA_ABLE = (1024),
2225  TC_UA_ABLE = (2048),
2226  TC_SO_ABLE = (4096),
2227  TC_RA_ABLE = (8192),
2228  TC_VA_ABLE = (16384),
2229  TC_RESERVED = (32768),
2230  TC_SCROLLBLT = (65536),
2231  PC_PATHS = (512),
2232  DRIVE_REMOVABLE = (2),
2233  DRIVE_FIXED = (3),
2234  DRIVE_REMOTE = (4),
2235  DRIVE_CDROM = (5),
2236  DRIVE_RAMDISK = (6),
2237  DRIVE_UNKNOWN = (0),
2238  DRIVE_NO_ROOT_DIR = (1),
2239  EXCEPTION_ACCESS_VIOLATION = (0xc0000005),
2240  EXCEPTION_BREAKPOINT = (0x80000003),
2241  EXCEPTION_DATATYPE_MISALIGNMENT = (0x80000002),
2242  EXCEPTION_SINGLE_STEP = (0x80000004),
2243  EXCEPTION_ARRAY_BOUNDS_EXCEEDED = (0xc000008c),
2244  EXCEPTION_FLT_DENORMAL_OPERAND = (0xc000008d),
2245  EXCEPTION_FLT_DIVIDE_BY_ZERO = (0xc000008e),
2246  EXCEPTION_FLT_INEXACT_RESULT = (0xc000008f),
2247  EXCEPTION_FLT_INVALID_OPERATION = (0xc0000090),
2248  EXCEPTION_FLT_OVERFLOW = (0xc0000091),
2249  EXCEPTION_FLT_STACK_CHECK = (0xc0000092),
2250  EXCEPTION_FLT_UNDERFLOW = (0xc0000093),
2251  EXCEPTION_INT_DIVIDE_BY_ZERO = (0xc0000094),
2252  EXCEPTION_INT_OVERFLOW = (0xc0000095),
2253  EXCEPTION_INVALID_HANDLE = (0xc0000008),
2254  EXCEPTION_PRIV_INSTRUCTION = (0xc0000096),
2255  EXCEPTION_NONCONTINUABLE_EXCEPTION = (0xc0000025),
2256  EXCEPTION_NONCONTINUABLE = (0x1),
2257  EXCEPTION_STACK_OVERFLOW = (0xc00000fd),
2258  EXCEPTION_INVALID_DISPOSITION = (0xc0000026),
2259  FILE_TYPE_UNKNOWN = (0),
2260  FILE_TYPE_DISK = (1),
2261  FILE_TYPE_CHAR = (2),
2262  FILE_TYPE_PIPE = (3),
2263  GGO_BITMAP = (1),
2264  GGO_NATIVE = (2),
2265  GGO_METRICS = (0),
2266  GGO_GRAY2_BITMAP = (4),
2267  GGO_GRAY4_BITMAP = (5),
2268  GGO_GRAY8_BITMAP = (6),
2269  GDI_ERROR = (0xffffffff),
2270  GM_COMPATIBLE = (1),
2271  GM_ADVANCED = (2),
2272  HANDLE_FLAG_INHERIT = (1),
2273  HANDLE_FLAG_PROTECT_FROM_CLOSE = (2),
2274 }
2275 
2276 char* RT_ACCELERATOR = cast(char*) ((9));
2277 char* RT_BITMAP = cast(char*) ((2));
2278 char* RT_DIALOG = cast(char*) ((5));
2279 char* RT_FONT = cast(char*) ((8));
2280 char* RT_FONTDIR = cast(char*) ((7));
2281 char* RT_MENU = cast(char*) ((4));
2282 char* RT_RCDATA = cast(char*) ((10));
2283 char* RT_STRING = cast(char*) ((6));
2284 char* RT_MESSAGETABLE = cast(char*) ((11));
2285 char* RT_CURSOR = cast(char*) ((1));
2286 char* RT_GROUP_CURSOR = cast(char*) ((12));
2287 char* RT_ICON = cast(char*) ((3));
2288 char* RT_GROUP_ICON = cast(char*) ((13));
2289 char* RT_VERSION = cast(char*) ((16));
2290 char* IDC_ARROW = cast(char*) ((32512));
2291 char* IDC_IBEAM = cast(char*) ((32513));
2292 char* IDC_WAIT = cast(char*) ((32514));
2293 char* IDC_CROSS = cast(char*) ((32515));
2294 char* IDC_UPARROW = cast(char*) ((32516));
2295 char* IDC_SIZENWSE = cast(char*) ((32642));
2296 char* IDC_SIZENESW = cast(char*) ((32643));
2297 char* IDC_SIZEWE = cast(char*) ((32644));
2298 char* IDC_SIZENS = cast(char*) ((32645));
2299 char* IDC_SIZEALL = cast(char*) ((32646));
2300 char* IDC_NO = cast(char*) ((32648));
2301 char* IDC_APPSTARTING = cast(char*) ((32650));
2302 char* IDC_HELP = cast(char*) ((32651));
2303 char* IDI_APPLICATION = cast(char*) ((32512));
2304 char* IDI_HAND = cast(char*) ((32513));
2305 char* IDI_QUESTION = cast(char*) ((32514));
2306 char* IDI_EXCLAMATION = cast(char*) ((32515));
2307 char* IDI_ASTERISK = cast(char*) ((32516));
2308 char* IDI_WINLOGO = cast(char*) ((32517));
2309 char* IDC_SIZE = cast(char*) ((32640));
2310 char* IDC_ICON = cast(char*) ((32641));
2311 
2312 enum : DWORD 
2313 {
2314  MM_ANISOTROPIC = (8),
2315  MM_HIENGLISH = (5),
2316  MM_HIMETRIC = (3),
2317  MM_ISOTROPIC = (7),
2318  MM_LOENGLISH = (4),
2319  MM_LOMETRIC = (2),
2320  MM_TEXT = (1),
2321  MM_TWIPS = (6),
2322  GMDI_GOINTOPOPUPS = (0x2),
2323  GMDI_USEDISABLED = (0x1),
2324  PM_NOREMOVE = (0),
2325  PM_REMOVE = (1),
2326  PM_NOYIELD = (2),
2327  PIPE_CLIENT_END = (0),
2328  PIPE_SERVER_END = (1),
2329  GW_HWNDNEXT = (2),
2330  GW_HWNDPREV = (3),
2331  GW_CHILD = (5),
2332  GW_HWNDFIRST = (0),
2333  GW_HWNDLAST = (1),
2334  GW_OWNER = (4),
2335  PT_MOVETO = (6),
2336  PT_LINETO = (2),
2337  PT_BEZIERTO = (4),
2338  PT_CLOSEFIGURE = (1),
2339  SHUTDOWN_NORETRY = (1),
2340  QS_ALLEVENTS = (191),
2341  QS_ALLINPUT = (255),
2342  QS_HOTKEY = (128),
2343  QS_INPUT = (7),
2344  QS_KEY = (1),
2345  QS_MOUSE = (6),
2346  QS_MOUSEBUTTON = (4),
2347  QS_MOUSEMOVE = (2),
2348  QS_PAINT = (32),
2349  QS_POSTMESSAGE = (8),
2350  QS_SENDMESSAGE = (64),
2351  QS_TIMER = (16),
2352  SIF_ALL = (23),
2353  SIF_PAGE = (2),
2354  SIF_POS = (4),
2355  SIF_RANGE = (1),
2356  SIF_DISABLENOSCROLL = (8),
2357  STD_INPUT_HANDLE = -(10),
2358  STD_OUTPUT_HANDLE = -(11),
2359  STD_ERROR_HANDLE = -(12),
2360  BLACK_BRUSH = (4),
2361  DKGRAY_BRUSH = (3),
2362  GRAY_BRUSH = (2),
2363  HOLLOW_BRUSH = (5),
2364  LTGRAY_BRUSH = (1),
2365  NULL_BRUSH = (5),
2366  WHITE_BRUSH = (0),
2367  BLACK_PEN = (7),
2368  NULL_PEN = (8),
2369  WHITE_PEN = (6),
2370  ANSI_FIXED_FONT = (11),
2371  ANSI_VAR_FONT = (12),
2372  DEVICE_DEFAULT_FONT = (14),
2373  DEFAULT_GUI_FONT = (17),
2374  OEM_FIXED_FONT = (10),
2375  SYSTEM_FONT = (13),
2376  SYSTEM_FIXED_FONT = (16),
2377  DEFAULT_PALETTE = (15),
2378  CT_CTYPE1 = (1),
2379  CT_CTYPE2 = (2),
2380  CT_CTYPE3 = (4),
2381  C1_UPPER = (1),
2382  C1_LOWER = (2),
2383  C1_DIGIT = (4),
2384  C1_SPACE = (8),
2385  C1_PUNCT = (16),
2386  C1_CNTRL = (32),
2387  C1_BLANK = (64),
2388  C1_XDIGIT = (128),
2389  C1_ALPHA = (256),
2390  C2_LEFTTORIGHT = (1),
2391  C2_RIGHTTOLEFT = (2),
2392  C2_EUROPENUMBER = (3),
2393  C2_EUROPESEPARATOR = (4),
2394  C2_EUROPETERMINATOR = (5),
2395  C2_ARABICNUMBER = (6),
2396  C2_COMMONSEPARATOR = (7),
2397  C2_BLOCKSEPARATOR = (8),
2398  C2_SEGMENTSEPARATOR = (9),
2399  C2_WHITESPACE = (10),
2400  C2_OTHERNEUTRAL = (11),
2401  C2_NOTAPPLICABLE = (0),
2402  C3_NONSPACING = (1),
2403  C3_DIACRITIC = (2),
2404  C3_VOWELMARK = (4),
2405  C3_SYMBOL = (8),
2406  C3_KATAKANA = (16),
2407  C3_HIRAGANA = (32),
2408  C3_HALFWIDTH = (64),
2409  C3_FULLWIDTH = (128),
2410  C3_IDEOGRAPH = (256),
2411  C3_KASHIDA = (512),
2412  C3_ALPHA = (32768),
2413  C3_NOTAPPLICABLE = (0),
2414  COLOR_3DDKSHADOW = (21),
2415  COLOR_3DFACE = (15),
2416  COLOR_3DHILIGHT = (20),
2417  COLOR_3DLIGHT = (22),
2418  COLOR_BTNHILIGHT = (20),
2419  COLOR_3DSHADOW = (16),
2420  COLOR_ACTIVEBORDER = (10),
2421  COLOR_ACTIVECAPTION = (2),
2422  COLOR_APPWORKSPACE = (12),
2423  COLOR_BACKGROUND = (1),
2424  COLOR_DESKTOP = (1),
2425  COLOR_BTNFACE = (15),
2426  COLOR_BTNHIGHLIGHT = (20),
2427  COLOR_BTNSHADOW = (16),
2428  COLOR_BTNTEXT = (18),
2429  COLOR_CAPTIONTEXT = (9),
2430  COLOR_GRAYTEXT = (17),
2431  COLOR_HIGHLIGHT = (13),
2432  COLOR_HIGHLIGHTTEXT = (14),
2433  COLOR_INACTIVEBORDER = (11),
2434  COLOR_INACTIVECAPTION = (3),
2435  COLOR_INACTIVECAPTIONTEXT = (19),
2436  COLOR_INFOBK = (24),
2437  COLOR_INFOTEXT = (23),
2438  COLOR_MENU = (4),
2439  COLOR_MENUTEXT = (7),
2440  COLOR_SCROLLBAR = (0),
2441  COLOR_WINDOW = (5),
2442  COLOR_WINDOWFRAME = (6),
2443  COLOR_WINDOWTEXT = (8),
2444  SM_CYMIN = (29),
2445  SM_CXMIN = (28),
2446  SM_ARRANGE = (56),
2447  SM_CLEANBOOT = (67),
2448  SM_CMETRICS = (76),
2449  SM_CMOUSEBUTTONS = (43),
2450  SM_CXBORDER = (5),
2451  SM_CYBORDER = (6),
2452  SM_CXCURSOR = (13),
2453  SM_CYCURSOR = (14),
2454  SM_CXDLGFRAME = (7),
2455  SM_CYDLGFRAME = (8),
2456  SM_CXDOUBLECLK = (36),
2457  SM_CYDOUBLECLK = (37),
2458  SM_CXDRAG = (68),
2459  SM_CYDRAG = (69),
2460  SM_CXEDGE = (45),
2461  SM_CYEDGE = (46),
2462  SM_CXFIXEDFRAME = (7),
2463  SM_CYFIXEDFRAME = (8),
2464  SM_CXFRAME = (32),
2465  SM_CYFRAME = (33),
2466  SM_CXFULLSCREEN = (16),
2467  SM_CYFULLSCREEN = (17),
2468  SM_CXHSCROLL = (21),
2469  SM_CYHSCROLL = (3),
2470  SM_CXHTHUMB = (10),
2471  SM_CXICON = (11),
2472  SM_CYICON = (12),
2473  SM_CXICONSPACING = (38),
2474  SM_CYICONSPACING = (39),
2475  SM_CXMAXIMIZED = (61),
2476  SM_CYMAXIMIZED = (62),
2477  SM_CXMAXTRACK = (59),
2478  SM_CYMAXTRACK = (60),
2479  SM_CXMENUCHECK = (71),
2480  SM_CYMENUCHECK = (72),
2481  SM_CXMENUSIZE = (54),
2482  SM_CYMENUSIZE = (55),
2483  SM_CXMINIMIZED = (57),
2484  SM_CYMINIMIZED = (58),
2485  SM_CXMINSPACING = (47),
2486  SM_CYMINSPACING = (48),
2487  SM_CXMINTRACK = (34),
2488  SM_CYMINTRACK = (35),
2489  SM_CXSCREEN = (0),
2490  SM_CYSCREEN = (1),
2491  SM_CXSIZE = (30),
2492  SM_CYSIZE = (31),
2493  SM_CXSIZEFRAME = (32),
2494  SM_CYSIZEFRAME = (33),
2495  SM_CXSMICON = (49),
2496  SM_CYSMICON = (50),
2497  SM_CXSMSIZE = (52),
2498  SM_CYSMSIZE = (53),
2499  SM_CXVSCROLL = (2),
2500  SM_CYVSCROLL = (20),
2501  SM_CYVTHUMB = (9),
2502  SM_CYCAPTION = (4),
2503  SM_CYKANJIWINDOW = (18),
2504  SM_CYMENU = (15),
2505  SM_CYSMCAPTION = (51),
2506  SM_DBCSENABLED = (42),
2507  SM_DEBUG = (22),
2508  SM_MENUDROPALIGNMENT = (40),
2509  SM_MIDEASTENABLED = (74),
2510  SM_MOUSEPRESENT = (19),
2511  SM_MOUSEWHEELPRESENT = (75),
2512  SM_NETWORK = (63),
2513  SM_PENWINDOWS = (41),
2514  SM_SECURE = (44),
2515  SM_SHOWSOUNDS = (70),
2516  SM_SLOWMACHINE = (73),
2517  SM_SWAPBUTTON = (23),
2518  ARW_BOTTOMLEFT = (0),
2519  ARW_BOTTOMRIGHT = (0x1),
2520  ARW_HIDE = (0x8),
2521  ARW_TOPLEFT = (0x2),
2522  ARW_TOPRIGHT = (0x3),
2523  ARW_DOWN = (0x4),
2524  ARW_LEFT = (0),
2525  ARW_RIGHT = (0),
2526  ARW_UP = (0x4),
2527  SYSPAL_NOSTATIC = (2),
2528  SYSPAL_STATIC = (1),
2529  SYSPAL_ERROR = (0),
2530  GET_TAPE_MEDIA_INFORMATION = (0),
2531  GET_TAPE_DRIVE_INFORMATION = (1),
2532  SET_TAPE_MEDIA_INFORMATION = (0),
2533  SET_TAPE_DRIVE_INFORMATION = (1),
2534  TAPE_ABSOLUTE_POSITION = (0),
2535  TAPE_LOGICAL_POSITION = (0x1),
2536  TA_BASELINE = (24),
2537  TA_BOTTOM = (8),
2538  TA_TOP = (0),
2539  TA_CENTER = (6),
2540  TA_LEFT = (0),
2541  TA_RIGHT = (2),
2542  TA_RTLREADING = (256),
2543  TA_NOUPDATECP = (0),
2544  TA_UPDATECP = (1),
2545  VTA_BASELINE = (24),
2546  VTA_CENTER = (6),
2547  THREAD_PRIORITY_ABOVE_NORMAL = (1),
2548  THREAD_PRIORITY_BELOW_NORMAL = -((1)),
2549  THREAD_PRIORITY_HIGHEST = (2),
2550  THREAD_PRIORITY_IDLE = -((15)),
2551  THREAD_PRIORITY_LOWEST = -((2)),
2552  THREAD_PRIORITY_NORMAL = (0),
2553  THREAD_PRIORITY_TIME_CRITICAL = (15),
2554  THREAD_PRIORITY_ERROR_RETURN = (2147483647),
2555  TLS_MINIMUM_AVAILABLE = (64),
2556  TIME_NOMINUTESORSECONDS = (1),
2557  TIME_NOSECONDS = (2),
2558  TIME_NOTIMEMARKER = (4),
2559  TIME_FORCE24HOURFORMAT = (8),
2560  TIME_ZONE_ID_INVALID = -(1),
2561  TIME_ZONE_ID_UNKNOWN = (0),
2562  TIME_ZONE_ID_STANDARD = (1),
2563  TIME_ZONE_ID_DAYLIGHT = (2),
2564  UOI_FLAGS = (1),
2565  UOI_NAME = (2),
2566  UOI_TYPE = (3),
2567  FS_CASE_IS_PRESERVED = (2),
2568  FS_CASE_SENSITIVE = (1),
2569  FS_UNICODE_STORED_ON_DISK = (4),
2570  FS_PERSISTENT_ACLS = (8),
2571  FS_FILE_COMPRESSION = (16),
2572  FS_VOL_IS_COMPRESSED = (32768),
2573  GWL_EXSTYLE = -((20)),
2574  GWL_STYLE = -((16)),
2575  GWL_WNDPROC = -((4)),
2576  GWL_HINSTANCE = -((6)),
2577  GWL_HWNDPARENT = -((8)),
2578  GWL_ID = -((12)),
2579  GWL_USERDATA = -((21)),
2580  DWL_DLGPROC = (4),
2581  DWL_MSGRESULT = (0),
2582  DWL_USER = (8),
2583  GMEM_FIXED = (0),
2584  GMEM_MOVEABLE = (2),
2585  GPTR = (64),
2586  GHND = (66),
2587  GMEM_DDESHARE = (8192),
2588  GMEM_DISCARDABLE = (256),
2589  GMEM_LOWER = (4096),
2590  GMEM_NOCOMPACT = (16),
2591  GMEM_NODISCARD = (32),
2592  GMEM_NOT_BANKED = (4096),
2593  GMEM_NOTIFY = (16384),
2594  GMEM_SHARE = (8192),
2595  GMEM_ZEROINIT = (64),
2596  GMEM_DISCARDED = (16384),
2597  GMEM_INVALID_HANDLE = (32768),
2598  GMEM_LOCKCOUNT = (255),
2599  HEAP_GENERATE_EXCEPTIONS = (4),
2600  HEAP_NO_SERIALIZE = (1),
2601  HEAP_ZERO_MEMORY = (8),
2602  STATUS_NO_MEMORY = (0xc0000017),
2603  STATUS_ACCESS_VIOLATION = (0xc0000005),
2604  HEAP_REALLOC_IN_PLACE_ONLY = (16),
2605  ILC_COLOR = (0),
2606  ILC_COLOR4 = (4),
2607  ILC_COLOR8 = (8),
2608  ILC_COLOR16 = (16),
2609  ILC_COLOR24 = (24),
2610  ILC_COLOR32 = (32),
2611  ILC_COLORDDB = (254),
2612  ILC_MASK = (1),
2613  ILC_PALETTE = (2048),
2614  ILD_BLEND25 = (2),
2615  ILD_BLEND50 = (4),
2616  ILD_SELECTED = (4),
2617  ILD_BLEND = (4),
2618  ILD_FOCUS = (2),
2619  ILD_MASK = (16),
2620  ILD_NORMAL = (0),
2621  ILD_TRANSPARENT = (1),
2622  CLR_NONE = (0xffffffff),
2623  CLR_DEFAULT = (0xff000000),
2624  CLR_INVALID = (0xFFFFFFFF),
2625  LR_LOADFROMFILE = (16),
2626  LR_LOADMAP3DCOLORS = (4096),
2627  LR_LOADTRANSPARENT = (32),
2628  IME_CONFIG_GENERAL = (1),
2629  IME_CONFIG_REGISTERWORD = (2),
2630  IME_CONFIG_SELECTDICTIONARY = (3),
2631  GCL_CONVERSION = (1),
2632  GCL_REVERSECONVERSION = (2),
2633  GCL_REVERSE_LENGTH = (3),
2634  GGL_LEVEL = (1),
2635  GGL_INDEX = (2),
2636  GGL_STRING = (3),
2637  GGL_PRIVATE = (4),
2638  GL_LEVEL_ERROR = (2),
2639  GL_LEVEL_FATAL = (1),
2640  GL_LEVEL_INFORMATION = (4),
2641  GL_LEVEL_NOGUIDELINE = (0),
2642  GL_LEVEL_WARNING = (3),
2643  GL_ID_CANNOTSAVE = (17),
2644  GL_ID_NOCONVERT = (32),
2645  GL_ID_NODICTIONARY = (16),
2646  GL_ID_NOMODULE = (1),
2647  GL_ID_READINGCONFLICT = (35),
2648  GL_ID_TOOMANYSTROKE = (34),
2649  GL_ID_TYPINGERROR = (33),
2650  GL_ID_UNKNOWN = (0),
2651  GL_ID_INPUTREADING = (36),
2652  GL_ID_INPUTRADICAL = (37),
2653  GL_ID_INPUTCODE = (38),
2654  GL_ID_CHOOSECANDIDATE = (40),
2655  GL_ID_REVERSECONVERSION = (41),
2656  IGP_PROPERTY = (4),
2657  IGP_CONVERSION = (8),
2658  IGP_SENTENCE = (12),
2659  IGP_UI = (16),
2660  IGP_SETCOMPSTR = (20),
2661  IGP_SELECT = (24),
2662  IME_PROP_AT_CARET = (65536),
2663  IME_PROP_SPECIAL_UI = (131072),
2664  IME_PROP_CANDLIST_START_FROM_1 = (262144),
2665  IME_PROP_UNICODE = (524288),
2666  UI_CAP_2700 = (1),
2667  UI_CAP_ROT90 = (2),
2668  UI_CAP_ROTANY = (4),
2669  SCS_CAP_COMPSTR = (1),
2670  SCS_CAP_MAKEREAD = (2),
2671  SELECT_CAP_CONVERSION = (1),
2672  SELECT_CAP_SENTENCE = (2),
2673  NI_CHANGECANDIDATELIST = (19),
2674  NI_CLOSECANDIDATE = (17),
2675  NI_COMPOSITIONSTR = (21),
2676  NI_OPENCANDIDATE = (16),
2677  NI_SELECTCANDIDATESTR = (18),
2678  NI_SETCANDIDATE_PAGESIZE = (23),
2679  NI_SETCANDIDATE_PAGESTART = (22),
2680  CPS_CANCEL = (4),
2681  CPS_COMPLETE = (1),
2682  CPS_CONVERT = (2),
2683  CPS_REVERT = (3),
2684  SCS_SETSTR = (9),
2685  SCS_CHANGEATTR = (18),
2686  SCS_CHANGECLAUSE = (36),
2687  IME_REGWORD_STYLE_EUDC = (1),
2688  IME_REGWORD_STYLE_USER_FIRST = (0x80000000),
2689  IME_REGWORD_STYLE_USER_LAST = -((1)),
2690  SECURITY_DESCRIPTOR_REVISION = (1),
2691  IS_TEXT_UNICODE_ASCII16 = (1),
2692  IS_TEXT_UNICODE_REVERSE_ASCII16 = (16),
2693  IS_TEXT_UNICODE_STATISTICS = (2),
2694  IS_TEXT_UNICODE_REVERSE_STATISTICS = (32),
2695  IS_TEXT_UNICODE_CONTROLS = (4),
2696  IS_TEXT_UNICODE_REVERSE_CONTROLS = (64),
2697  IS_TEXT_UNICODE_SIGNATURE = (8),
2698  IS_TEXT_UNICODE_REVERSE_SIGNATURE = (128),
2699  IS_TEXT_UNICODE_ILLEGAL_CHARS = (256),
2700  IS_TEXT_UNICODE_ODD_LENGTH = (512),
2701  IS_TEXT_UNICODE_NULL_BYTES = (4096),
2702  IS_TEXT_UNICODE_UNICODE_MASK = (15),
2703  IS_TEXT_UNICODE_REVERSE_MASK = (240),
2704  IS_TEXT_UNICODE_NOT_UNICODE_MASK = (3840),
2705  IS_TEXT_UNICODE_NOT_ASCII_MASK = (61440),
2706  HC_GETNEXT = (1),
2707  HC_SKIP = (2),
2708  HC_SYSMODALOFF = (5),
2709  HC_SYSMODALON = (4),
2710  HC_NOREMOVE = (3),
2711  KEYEVENTF_EXTENDEDKEY = (1),
2712  KEYEVENTF_KEYUP = (2),
2713  OBM_BTNCORNERS = (32758),
2714  OBM_BTSIZE = (32761),
2715  OBM_CHECK = (32760),
2716  OBM_CHECKBOXES = (32759),
2717  OBM_CLOSE = (32754),
2718  OBM_COMBO = (32738),
2719  OBM_DNARROW = (32752),
2720  OBM_DNARROWD = (32742),
2721  OBM_DNARROWI = (32736),
2722  OBM_LFARROW = (32750),
2723  OBM_LFARROWI = (32734),
2724  OBM_LFARROWD = (32740),
2725  OBM_MNARROW = (32739),
2726  OBM_OLD_CLOSE = (32767),
2727  OBM_OLD_DNARROW = (32764),
2728  OBM_OLD_LFARROW = (32762),
2729  OBM_OLD_REDUCE = (32757),
2730  OBM_OLD_RESTORE = (32755),
2731  OBM_OLD_RGARROW = (32763),
2732  OBM_OLD_UPARROW = (32765),
2733  OBM_OLD_ZOOM = (32756),
2734  OBM_REDUCE = (32749),
2735  OBM_REDUCED = (32746),
2736  OBM_RESTORE = (32747),
2737  OBM_RESTORED = (32744),
2738  OBM_RGARROW = (32751),
2739  OBM_RGARROWD = (32741),
2740  OBM_RGARROWI = (32735),
2741  OBM_SIZE = (32766),
2742  OBM_UPARROW = (32753),
2743  OBM_UPARROWD = (32743),
2744  OBM_UPARROWI = (32737),
2745  OBM_ZOOM = (32748),
2746  OBM_ZOOMD = (32745),
2747  DONT_RESOLVE_DLL_REFERENCES = (1),
2748  LOAD_LIBRARY_AS_DATAFILE = (2),
2749  LOAD_WITH_ALTERED_SEARCH_PATH = (8),
2750  LPTR = (64),
2751  LHND = (66),
2752  NONZEROLHND = (2),
2753  NONZEROLPTR = (0),
2754  LMEM_NONZEROLHND = (2),
2755  LMEM_NONZEROLPTR = (0),
2756  LMEM_FIXED = (0),
2757  LMEM_MOVEABLE = (2),
2758  LMEM_NOCOMPACT = (16),
2759  LMEM_NODISCARD = (32),
2760  LMEM_ZEROINIT = (64),
2761  LMEM_MODIFY = (128),
2762  LMEM_LOCKCOUNT = (255),
2763  LMEM_DISCARDABLE = (3840),
2764  LMEM_DISCARDED = (16384),
2765  LMEM_INVALID_HANDLE = (32768),
2766  LOCKFILE_FAIL_IMMEDIATELY = (1),
2767  LOCKFILE_EXCLUSIVE_LOCK = (2),
2768  MB_USERICON = (0x80),
2769  MB_ICONASTERISK = (0x40),
2770  MB_ICONEXCLAMATION = (0x30),
2771  MB_ICONWARNING = (0x30),
2772  MB_ICONERROR = (0x10),
2773  MB_ICONHAND = (0x10),
2774  MB_ICONQUESTION = (0x20),
2775  MB_OK = (0),
2776  MB_ABORTRETRYIGNORE = (0x2),
2777  MB_APPLMODAL = (0),
2778  MB_DEFAULT_DESKTOP_ONLY = (0x20000),
2779  MB_HELP = (0x4000),
2780  MB_RIGHT = (0x80000),
2781  MB_RTLREADING = (0x100000),
2782  MB_TOPMOST = (0x40000),
2783  MB_DEFBUTTON1 = (0),
2784  MB_DEFBUTTON2 = (0x100),
2785  MB_DEFBUTTON3 = (0x200),
2786  MB_DEFBUTTON4 = (0x300),
2787  MB_ICONINFORMATION = (0x40),
2788  MB_ICONSTOP = (0x10),
2789  MB_OKCANCEL = (0x1),
2790  MB_RETRYCANCEL = (0x5),
2791  MB_SERVICE_NOTIFICATION = (0x40000),
2792  MB_SETFOREGROUND = (0x10000),
2793  MB_SYSTEMMODAL = (0x1000),
2794  MB_TASKMODAL = (0x2000),
2795  MB_YESNO = (0x4),
2796  MB_YESNOCANCEL = (0x3),
2797  IDABORT = (3),
2798  IDCANCEL = (2),
2799  IDCLOSE = (8),
2800  IDHELP = (9),
2801  IDIGNORE = (5),
2802  IDNO = (7),
2803  IDOK = (1),
2804  IDRETRY = (4),
2805  IDYES = (6),
2806  MSGF_DIALOGBOX = (0),
2807  MSGF_MENU = (2),
2808  MSGF_NEXTWINDOW = (6),
2809  MSGF_SCROLLBAR = (5),
2810  MSGF_MAINLOOP = (8),
2811  MSGF_USER = (4096),
2812  MWT_IDENTITY = (1),
2813  MWT_LEFTMULTIPLY = (2),
2814  MWT_RIGHTMULTIPLY = (3),
2815  MOUSEEVENTF_ABSOLUTE = (32768),
2816  MOUSEEVENTF_MOVE = (1),
2817  MOUSEEVENTF_LEFTDOWN = (2),
2818  MOUSEEVENTF_LEFTUP = (4),
2819  MOUSEEVENTF_RIGHTDOWN = (8),
2820  MOUSEEVENTF_RIGHTUP = (16),
2821  MOUSEEVENTF_MIDDLEDOWN = (32),
2822  MOUSEEVENTF_MIDDLEUP = (64),
2823  MOVEFILE_REPLACE_EXISTING = (1),
2824  MOVEFILE_COPY_ALLOWED = (2),
2825  MOVEFILE_DELAY_UNTIL_REBOOT = (4),
2826  MOVEFILE_WRITE_THROUGH = (8),
2827  WAIT_OBJECT_0 = (0),
2828  WAIT_ABANDONED_0 = (0x80),
2829  WAIT_TIMEOUT = (0x102),
2830  WAIT_IO_COMPLETION = (0xc0),
2831  WAIT_ABANDONED = (0x80),
2832  WAIT_FAILED = (0xffffffff),
2833  MAXIMUM_WAIT_OBJECTS = (0x40),
2834  MAXIMUM_SUSPEND_COUNT = (0x7f),
2835  MB_PRECOMPOSED = (1),
2836  MB_COMPOSITE = (2),
2837  MB_ERR_INVALID_CHARS = (8),
2838  MB_USEGLYPHCHARS = (4),
2839  TOKEN_ADJUST_DEFAULT = (128),
2840  TOKEN_ADJUST_GROUPS = (64),
2841  TOKEN_ADJUST_PRIVILEGES = (32),
2842  TOKEN_ALL_ACCESS = (0xf00ff),
2843  TOKEN_ASSIGN_PRIMARY = (1),
2844  TOKEN_DUPLICATE = (2),
2845  TOKEN_EXECUTE = (0x20000),
2846  TOKEN_IMPERSONATE = (4),
2847  TOKEN_QUERY = (8),
2848  TOKEN_QUERY_SOURCE = (16),
2849  TOKEN_READ = (0x20008),
2850  TOKEN_WRITE = (0x200e0),
2851  SC_MANAGER_ALL_ACCESS = (0xf003f),
2852  SC_MANAGER_CONNECT = (1),
2853  SC_MANAGER_CREATE_SERVICE = (2),
2854  SC_MANAGER_ENUMERATE_SERVICE = (4),
2855  SC_MANAGER_LOCK = (8),
2856  SC_MANAGER_QUERY_LOCK_STATUS = (16),
2857  SC_MANAGER_MODIFY_BOOT_CONFIG = (32),
2858  TAPE_FORMAT = (0x5),
2859  TAPE_LOAD = (0),
2860  TAPE_LOCK = (0x3),
2861  TAPE_TENSION = (0x2),
2862  TAPE_UNLOAD = (0x1),
2863  TAPE_UNLOCK = (0x4),
2864  IS_PSREBOOTSYSTEM = (3),
2865  IS_PSRESTARTWINDOWS = (2),
2866  PSPCB_CREATE = (2),
2867  PSPCB_RELEASE = (1),
2868  PURGE_TXABORT = (1),
2869  PURGE_RXABORT = (2),
2870  PURGE_TXCLEAR = (4),
2871  PURGE_RXCLEAR = (8),
2872  OWNER_SECURITY_INFORMATION = (0x1),
2873  GROUP_SECURITY_INFORMATION = (0x2),
2874  DACL_SECURITY_INFORMATION = (0x4),
2875  SACL_SECURITY_INFORMATION = (0x8),
2876  EVENTLOG_FORWARDS_READ = (4),
2877  EVENTLOG_BACKWARDS_READ = (8),
2878  EVENTLOG_SEEK_READ = (2),
2879  EVENTLOG_SEQUENTIAL_READ = (1),
2880  EVENTLOG_ERROR_TYPE = (1),
2881  EVENTLOG_WARNING_TYPE = (2),
2882  EVENTLOG_INFORMATION_TYPE = (4),
2883  EVENTLOG_AUDIT_SUCCESS = (8),
2884  EVENTLOG_AUDIT_FAILURE = (16),
2885  RDW_ERASE = (4),
2886  RDW_FRAME = (1024),
2887  RDW_INTERNALPAINT = (2),
2888  RDW_INVALIDATE = (1),
2889  RDW_NOERASE = (32),
2890  RDW_NOFRAME = (2048),
2891  RDW_NOINTERNALPAINT = (16),
2892  RDW_VALIDATE = (8),
2893  RDW_ERASENOW = (512),
2894  RDW_UPDATENOW = (256),
2895  RDW_ALLCHILDREN = (128),
2896  RDW_NOCHILDREN = (64),
2897 /*
2898  //
2899  HKEY_CLASSES_ROOT = (0x80000000),
2900  HKEY_CURRENT_USER = (0x80000001),
2901  HKEY_LOCAL_MACHINE = (0x80000002),
2902  HKEY_USERS = (0x80000003),
2903  HKEY_PERFORMANCE_DATA = (0x80000004),
2904  HKEY_CURRENT_CONFIG = (0x80000005),
2905  HKEY_DYN_DATA = (0x80000006),
2906 */
2907  REG_OPTION_VOLATILE = (0x1),
2908  REG_OPTION_NON_VOLATILE = (0),
2909  REG_CREATED_NEW_KEY = (0x1),
2910  REG_OPENED_EXISTING_KEY = (0x2),
2911  REG_BINARY = (3),
2912  REG_DWORD = (4),
2913  REG_DWORD_LITTLE_ENDIAN = (4),
2914  REG_DWORD_BIG_ENDIAN = (5),
2915  REG_EXPAND_SZ = (2),
2916  REG_FULL_RESOURCE_DESCRIPTOR = (9),
2917  REG_LINK = (6),
2918  REG_MULTI_SZ = (7),
2919  REG_NONE = (0),
2920  REG_RESOURCE_LIST = (8),
2921  REG_RESOURCE_REQUIREMENTS_LIST = (10),
2922  REG_SZ = (1),
2923  MOD_ALT = (1),
2924  MOD_CONTROL = (2),
2925  MOD_SHIFT = (4),
2926  MOD_WIN = (8),
2927  IDHOT_SNAPDESKTOP = -((2)),
2928  IDHOT_SNAPWINDOW = -((1)),
2929  REG_NOTIFY_CHANGE_NAME = (0x1),
2930  REG_NOTIFY_CHANGE_ATTRIBUTES = (0x2),
2931  REG_NOTIFY_CHANGE_LAST_SET = (0x4),
2932  REG_NOTIFY_CHANGE_SECURITY = (0x8),
2933  SW_ERASE = (4),
2934  SW_INVALIDATE = (2),
2935  SW_SCROLLCHILDREN = (1),
2936  SMTO_ABORTIFHUNG = (2),
2937  SMTO_BLOCK = (1),
2938  SMTO_NORMAL = (0),
2939  OPAQUE = (2),
2940  TRANSPARENT = (1),
2941  SLE_ERROR = (1),
2942  SLE_MINORERROR = (2),
2943  SLE_WARNING = (3),
2944  SEM_FAILCRITICALERRORS = (1),
2945  SEM_NOALIGNMENTFAULTEXCEPT = (4),
2946  SEM_NOGPFAULTERRORBOX = (2),
2947  SEM_NOOPENFILEERRORBOX = (32768),
2948  ICM_ON = (2),
2949  ICM_OFF = (1),
2950  ICM_QUERY = (3),
2951  LOCALE_ILANGUAGE = (1),
2952  LOCALE_SLANGUAGE = (2),
2953  LOCALE_SENGLANGUAGE = (4097),
2954  LOCALE_SABBREVLANGNAME = (3),
2955  LOCALE_SNATIVELANGNAME = (4),
2956  LOCALE_ICOUNTRY = (5),
2957  LOCALE_SCOUNTRY = (6),
2958  LOCALE_SENGCOUNTRY = (4098),
2959  LOCALE_SABBREVCTRYNAME = (7),
2960  LOCALE_SNATIVECTRYNAME = (8),
2961  LOCALE_IDEFAULTLANGUAGE = (9),
2962  LOCALE_IDEFAULTCOUNTRY = (10),
2963  LOCALE_IDEFAULTANSICODEPAGE = (4100),
2964  LOCALE_IDEFAULTCODEPAGE = (11),
2965  LOCALE_SLIST = (12),
2966  LOCALE_IMEASURE = (13),
2967  LOCALE_SDECIMAL = (14),
2968  LOCALE_STHOUSAND = (15),
2969  LOCALE_SGROUPING = (16),
2970  LOCALE_IDIGITS = (17),
2971  LOCALE_ILZERO = (18),
2972  LOCALE_INEGNUMBER = (4112),
2973  LOCALE_SCURRENCY = (20),
2974  LOCALE_SMONDECIMALSEP = (22),
2975  LOCALE_SMONTHOUSANDSEP = (23),
2976  LOCALE_SMONGROUPING = (24),
2977  LOCALE_ICURRDIGITS = (25),
2978  LOCALE_ICURRENCY = (27),
2979  LOCALE_INEGCURR = (28),
2980  LOCALE_SDATE = (29),
2981  LOCALE_STIME = (30),
2982  LOCALE_STIMEFORMAT = (4099),
2983  LOCALE_SSHORTDATE = (31),
2984  LOCALE_SLONGDATE = (32),
2985  LOCALE_SYEARMONTH = (0x00001006),
2986  LOCALE_IDATE = (33),
2987  LOCALE_ILDATE = (34),
2988  LOCALE_ITIME = (35),
2989  LOCALE_ITLZERO = (37),
2990  LOCALE_IDAYLZERO = (38),
2991  LOCALE_IMONLZERO = (39),
2992  LOCALE_S1159 = (40),
2993  LOCALE_S2359 = (41),
2994  LOCALE_ICALENDARTYPE = (4105),
2995  LOCALE_IOPTIONALCALENDAR = (4107),
2996  LOCALE_IFIRSTDAYOFWEEK = (4108),
2997  LOCALE_IFIRSTWEEKOFYEAR = (4109),
2998  LOCALE_SDAYNAME1 = (42),
2999  LOCALE_SDAYNAME2 = (43),
3000  LOCALE_SDAYNAME3 = (44),
3001  LOCALE_SDAYNAME4 = (45),
3002  LOCALE_SDAYNAME5 = (46),
3003  LOCALE_SDAYNAME6 = (47),
3004  LOCALE_SDAYNAME7 = (48),
3005  LOCALE_SABBREVDAYNAME1 = (49),
3006  LOCALE_SABBREVDAYNAME2 = (50),
3007  LOCALE_SABBREVDAYNAME3 = (51),
3008  LOCALE_SABBREVDAYNAME4 = (52),
3009  LOCALE_SABBREVDAYNAME5 = (53),
3010  LOCALE_SABBREVDAYNAME6 = (54),
3011  LOCALE_SABBREVDAYNAME7 = (55),
3012  LOCALE_SMONTHNAME1 = (56),
3013  LOCALE_SMONTHNAME2 = (57),
3014  LOCALE_SMONTHNAME3 = (58),
3015  LOCALE_SMONTHNAME4 = (59),
3016  LOCALE_SMONTHNAME5 = (60),
3017  LOCALE_SMONTHNAME6 = (61),
3018  LOCALE_SMONTHNAME7 = (62),
3019  LOCALE_SMONTHNAME8 = (63),
3020  LOCALE_SMONTHNAME9 = (64),
3021  LOCALE_SMONTHNAME10 = (65),
3022  LOCALE_SMONTHNAME11 = (66),
3023  LOCALE_SMONTHNAME12 = (67),
3024  LOCALE_SMONTHNAME13 = (4110),
3025  LOCALE_SABBREVMONTHNAME1 = (68),
3026  LOCALE_SABBREVMONTHNAME2 = (69),
3027  LOCALE_SABBREVMONTHNAME3 = (70),
3028  LOCALE_SABBREVMONTHNAME4 = (71),
3029  LOCALE_SABBREVMONTHNAME5 = (72),
3030  LOCALE_SABBREVMONTHNAME6 = (73),
3031  LOCALE_SABBREVMONTHNAME7 = (74),
3032  LOCALE_SABBREVMONTHNAME8 = (75),
3033  LOCALE_SABBREVMONTHNAME9 = (76),
3034  LOCALE_SABBREVMONTHNAME10 = (77),
3035  LOCALE_SABBREVMONTHNAME11 = (78),
3036  LOCALE_SABBREVMONTHNAME12 = (79),
3037  LOCALE_SABBREVMONTHNAME13 = (4111),
3038  LOCALE_SPOSITIVESIGN = (80),
3039  LOCALE_SNEGATIVESIGN = (81),
3040  LOCALE_IPOSSIGNPOSN = (82),
3041  LOCALE_INEGSIGNPOSN = (83),
3042  LOCALE_IPOSSYMPRECEDES = (84),
3043  LOCALE_IPOSSEPBYSPACE = (85),
3044  LOCALE_INEGSYMPRECEDES = (86),
3045  LOCALE_INEGSEPBYSPACE = (87),
3046  LOCALE_NOUSEROVERRIDE = (0x80000000),
3047  CAL_ICALINTVALUE = (1),
3048  CAL_IYEAROFFSETRANGE = (3),
3049  CAL_SABBREVDAYNAME1 = (14),
3050  CAL_SABBREVDAYNAME2 = (15),
3051  CAL_SABBREVDAYNAME3 = (16),
3052  CAL_SABBREVDAYNAME4 = (17),
3053  CAL_SABBREVDAYNAME5 = (18),
3054  CAL_SABBREVDAYNAME6 = (19),
3055  CAL_SABBREVDAYNAME7 = (20),
3056  CAL_SABBREVMONTHNAME1 = (34),
3057  CAL_SABBREVMONTHNAME2 = (35),
3058  CAL_SABBREVMONTHNAME3 = (36),
3059  CAL_SABBREVMONTHNAME4 = (37),
3060  CAL_SABBREVMONTHNAME5 = (38),
3061  CAL_SABBREVMONTHNAME6 = (39),
3062  CAL_SABBREVMONTHNAME7 = (40),
3063  CAL_SABBREVMONTHNAME8 = (41),
3064  CAL_SABBREVMONTHNAME9 = (42),
3065  CAL_SABBREVMONTHNAME10 = (43),
3066  CAL_SABBREVMONTHNAME11 = (44),
3067  CAL_SABBREVMONTHNAME12 = (45),
3068  CAL_SABBREVMONTHNAME13 = (46),
3069  CAL_SCALNAME = (2),
3070  CAL_SDAYNAME1 = (7),
3071  CAL_SDAYNAME2 = (8),
3072  CAL_SDAYNAME3 = (9),
3073  CAL_SDAYNAME4 = (10),
3074  CAL_SDAYNAME5 = (11),
3075  CAL_SDAYNAME6 = (12),
3076  CAL_SDAYNAME7 = (13),
3077  CAL_SERASTRING = (4),
3078  CAL_SLONGDATE = (6),
3079  CAL_SMONTHNAME1 = (21),
3080  CAL_SMONTHNAME2 = (22),
3081  CAL_SMONTHNAME3 = (23),
3082  CAL_SMONTHNAME4 = (24),
3083  CAL_SMONTHNAME5 = (25),
3084  CAL_SMONTHNAME6 = (26),
3085  CAL_SMONTHNAME7 = (27),
3086  CAL_SMONTHNAME8 = (28),
3087  CAL_SMONTHNAME9 = (29),
3088  CAL_SMONTHNAME10 = (30),
3089  CAL_SMONTHNAME11 = (31),
3090  CAL_SMONTHNAME12 = (32),
3091  CAL_SMONTHNAME13 = (33),
3092  CAL_SSHORTDATE = (5),
3093  PROCESS_SET_QUOTA = (256),
3094  BLACKONWHITE = (1),
3095  COLORONCOLOR = (3),
3096  HALFTONE = (4),
3097  STRETCH_ANDSCANS = (1),
3098  STRETCH_DELETESCANS = (3),
3099  STRETCH_HALFTONE = (4),
3100  STRETCH_ORSCANS = (2),
3101  WHITEONBLACK = (2),
3102  OCR_NORMAL = (32512),
3103  OCR_IBEAM = (32513),
3104  OCR_WAIT = (32514),
3105  OCR_CROSS = (32515),
3106  OCR_UP = (32516),
3107  OCR_SIZE = (32640),
3108  OCR_ICON = (32641),
3109  OCR_SIZENWSE = (32642),
3110  OCR_SIZENESW = (32643),
3111  OCR_SIZEWE = (32644),
3112  OCR_SIZENS = (32645),
3113  OCR_SIZEALL = (32646),
3114  OCR_NO = (32648),
3115  OCR_APPSTARTING = (32650),
3116  TAPE_ABSOLUTE_BLOCK = (0x1),
3117  TAPE_LOGICAL_BLOCK = (0x2),
3118  TAPE_REWIND = (0),
3119  TAPE_SPACE_END_OF_DATA = (0x4),
3120  TAPE_SPACE_FILEMARKS = (0x6),
3121  TAPE_SPACE_RELATIVE_BLOCKS = (0x5),
3122  TAPE_SPACE_SEQUENTIAL_FMKS = (0x7),
3123  TAPE_SPACE_SEQUENTIAL_SMKS = (0x9),
3124  TAPE_SPACE_SETMARKS = (0x8),
3125  EXCEPTION_EXECUTE_HANDLER = (1),
3126  EXCEPTION_CONTINUE_EXECUTION = -((1)),
3127  EXCEPTION_CONTINUE_SEARCH = (0),
3128  SWP_DRAWFRAME = (32),
3129  SWP_FRAMECHANGED = (32),
3130  SWP_HIDEWINDOW = (128),
3131  SWP_NOACTIVATE = (16),
3132  SWP_NOCOPYBITS = (256),
3133  SWP_NOMOVE = (2),
3134  SWP_NOSIZE = (1),
3135  SWP_NOREDRAW = (8),
3136  SWP_NOZORDER = (4),
3137  SWP_SHOWWINDOW = (64),
3138  SWP_NOOWNERZORDER = (512),
3139  SWP_NOREPOSITION = (512),
3140  SWP_NOSENDCHANGING = (1024),
3141  HSHELL_ACTIVATESHELLWINDOW = (3),
3142  HSHELL_GETMINRECT = (5),
3143  HSHELL_LANGUAGE = (8),
3144  HSHELL_REDRAW = (6),
3145  HSHELL_TASKMAN = (7),
3146  HSHELL_WINDOWACTIVATED = (4),
3147  HSHELL_WINDOWCREATED = (1),
3148  HSHELL_WINDOWDESTROYED = (2),
3149  SW_HIDE = (0),
3150  SW_MAXIMIZE = (3),
3151  SW_MINIMIZE = (6),
3152  SW_NORMAL = (1),
3153  SW_RESTORE = (9),
3154  SW_SHOW = (5),
3155  SW_SHOWDEFAULT = (10),
3156  SW_SHOWMAXIMIZED = (3),
3157  SW_SHOWMINIMIZED = (2),
3158  SW_SHOWMINNOACTIVE = (7),
3159  SW_SHOWNA = (8),
3160  SW_SHOWNOACTIVATE = (4),
3161  SW_SHOWNORMAL = (1),
3162  WPF_RESTORETOMAXIMIZED = (2),
3163  WPF_SETMINPOSITION = (1),
3164  INFINITE = (0xFFFFFFFF),
3165  SPI_GETACCESSTIMEOUT = (60),
3166  SPI_GETANIMATION = (72),
3167  SPI_GETBEEP = (1),
3168  SPI_GETBORDER = (5),
3169  SPI_GETDEFAULTINPUTLANG = (89),
3170  SPI_GETDRAGFULLWINDOWS = (38),
3171  SPI_GETFASTTASKSWITCH = (35),
3172  SPI_GETFILTERKEYS = (50),
3173  SPI_GETFONTSMOOTHING = (74),
3174  SPI_GETGRIDGRANULARITY = (18),
3175  SPI_GETHIGHCONTRAST = (66),
3176  SPI_GETICONMETRICS = (45),
3177  SPI_GETICONTITLELOGFONT = (31),
3178  SPI_GETICONTITLEWRAP = (25),
3179  SPI_GETKEYBOARDDELAY = (22),
3180  SPI_GETKEYBOARDPREF = (68),
3181  SPI_GETKEYBOARDSPEED = (10),
3182  SPI_GETLOWPOWERACTIVE = (83),
3183  SPI_GETLOWPOWERTIMEOUT = (79),
3184  SPI_GETMENUDROPALIGNMENT = (27),
3185  SPI_GETMINIMIZEDMETRICS = (43),
3186  SPI_GETMOUSE = (3),
3187  SPI_GETMOUSEKEYS = (54),
3188  SPI_GETMOUSETRAILS = (94),
3189  SPI_GETNONCLIENTMETRICS = (41),
3190  SPI_GETPOWEROFFACTIVE = (84),
3191  SPI_GETPOWEROFFTIMEOUT = (80),
3192  SPI_GETSCREENREADER = (70),
3193  SPI_GETSCREENSAVEACTIVE = (16),
3194  SPI_GETSCREENSAVETIMEOUT = (14),
3195  SPI_GETSERIALKEYS = (62),
3196  SPI_GETSHOWSOUNDS = (56),
3197  SPI_GETSOUNDSENTRY = (64),
3198  SPI_GETSTICKYKEYS = (58),
3199  SPI_GETTOGGLEKEYS = (52),
3200  SPI_GETWINDOWSEXTENSION = (92),
3201  SPI_GETWORKAREA = (48),
3202  SPI_ICONHORIZONTALSPACING = (13),
3203  SPI_ICONVERTICALSPACING = (24),
3204  SPI_LANGDRIVER = (12),
3205  SPI_SCREENSAVERRUNNING = (97),
3206  SPI_SETACCESSTIMEOUT = (61),
3207  SPI_SETANIMATION = (73),
3208  SPI_SETBEEP = (2),
3209  SPI_SETBORDER = (6),
3210  SPI_SETDEFAULTINPUTLANG = (90),
3211  SPI_SETDESKPATTERN = (21),
3212  SPI_SETDESKWALLPAPER = (20),
3213  SPI_SETDOUBLECLICKTIME = (32),
3214  SPI_SETDOUBLECLKHEIGHT = (30),
3215  SPI_SETDOUBLECLKWIDTH = (29),
3216  SPI_SETDRAGFULLWINDOWS = (37),
3217  SPI_SETDRAGHEIGHT = (77),
3218  SPI_SETDRAGWIDTH = (76),
3219  SPI_SETFASTTASKSWITCH = (36),
3220  SPI_SETFILTERKEYS = (51),
3221  SPI_SETFONTSMOOTHING = (75),
3222  SPI_SETGRIDGRANULARITY = (19),
3223  SPI_SETHANDHELD = (78),
3224  SPI_SETHIGHCONTRAST = (67),
3225  SPI_SETICONMETRICS = (46),
3226  SPI_SETICONTITLELOGFONT = (34),
3227  SPI_SETICONTITLEWRAP = (26),
3228  SPI_SETKEYBOARDDELAY = (23),
3229  SPI_SETKEYBOARDPREF = (69),
3230  SPI_SETKEYBOARDSPEED = (11),
3231  SPI_SETLANGTOGGLE = (91),
3232  SPI_SETLOWPOWERACTIVE = (85),
3233  SPI_SETLOWPOWERTIMEOUT = (81),
3234  SPI_SETMENUDROPALIGNMENT = (28),
3235  SPI_SETMINIMIZEDMETRICS = (44),
3236  SPI_SETMOUSE = (4),
3237  SPI_SETMOUSEBUTTONSWAP = (33),
3238  SPI_SETMOUSEKEYS = (55),
3239  SPI_SETMOUSETRAILS = (93),
3240  SPI_SETNONCLIENTMETRICS = (42),
3241  SPI_SETPENWINDOWS = (49),
3242  SPI_SETPOWEROFFACTIVE = (86),
3243  SPI_SETPOWEROFFTIMEOUT = (82),
3244  SPI_SETSCREENREADER = (71),
3245  SPI_SETSCREENSAVEACTIVE = (17),
3246  SPI_SETSCREENSAVETIMEOUT = (15),
3247  SPI_SETSERIALKEYS = (63),
3248  SPI_SETSHOWSOUNDS = (57),
3249  SPI_SETSOUNDSENTRY = (65),
3250  SPI_SETSTICKYKEYS = (59),
3251  SPI_SETTOGGLEKEYS = (53),
3252  SPI_SETWORKAREA = (47),
3253  SPIF_UPDATEINIFILE = (1),
3254  SPIF_SENDWININICHANGE = (2),
3255  SPIF_SENDCHANGE = (2),
3256  TPM_CENTERALIGN = (0x4),
3257  TPM_LEFTALIGN = (0),
3258  TPM_RIGHTALIGN = (0x8),
3259  TPM_LEFTBUTTON = (0),
3260  TPM_RIGHTBUTTON = (0x2),
3261  TPM_HORIZONTAL = (0),
3262  TPM_VERTICAL = (0x40),
3263  TCI_SRCCHARSET = (1),
3264  TCI_SRCCODEPAGE = (2),
3265  TCI_SRCFONTSIG = (3),
3266  VFFF_ISSHAREDFILE = (1),
3267  VFF_CURNEDEST = (1),
3268  VFF_FILEINUSE = (2),
3269  VFF_BUFFTOOSMALL = (4),
3270  VIFF_FORCEINSTALL = (1),
3271  VIFF_DONTDELETEOLD = (2),
3272  VIF_TEMPFILE = (0x1),
3273  VIF_MISMATCH = (0x2),
3274  VIF_SRCOLD = (0x4),
3275  VIF_DIFFLANG = (0x8),
3276  VIF_DIFFCODEPG = (0x10),
3277  VIF_DIFFTYPE = (0x20),
3278  VIF_WRITEPROT = (0x40),
3279  VIF_FILEINUSE = (0x80),
3280  VIF_OUTOFSPACE = (0x100),
3281  VIF_ACCESSVIOLATION = (0x200),
3282  VIF_SHARINGVIOLATION = (0x400),
3283  VIF_CANNOTCREATE = (0x800),
3284  VIF_CANNOTDELETE = (0x1000),
3285  VIF_CANNOTDELETECUR = (0x4000),
3286  VIF_CANNOTRENAME = (0x2000),
3287  VIF_OUTOFMEMORY = (0x8000),
3288  VIF_CANNOTREADSRC = (0x10000),
3289  VIF_CANNOTREADDST = (0x20000),
3290  VIF_BUFFTOOSMALL = (0x40000),
3291  WC_COMPOSITECHECK = (512),
3292  WC_DISCARDNS = (16),
3293  WC_SEPCHARS = (32),
3294  WC_DEFAULTCHAR = (64),
3295  HELP_COMMAND = (0x102),
3296  HELP_CONTENTS = (0x3),
3297  HELP___FILE__ = (0x1),
3298  HELP___FILE__POPUP = (0x8),
3299  HELP_FORCEFILE = (0x9),
3300  HELP_HELPONHELP = (0x4),
3301  HELP_INDEX = (0x3),
3302  HELP_KEY = (0x101),
3303  HELP_MULTIKEY = (0x201),
3304  HELP_PARTIALKEY = (0x105),
3305  HELP_QUIT = (0x2),
3306  HELP_SETCONTENTS = (0x5),
3307  HELP_SETINDEX = (0x5),
3308  HELP___FILE__MENU = (0xa),
3309  HELP_FINDER = (0xb),
3310  HELP_WM_HELP = (0xc),
3311  HELP_TCARD = (0x8000),
3312  HELP_TCARD_DATA = (0x10),
3313  HELP_TCARD_OTHER_CALLER = (0x11),
3314  CONNECT_UPDATE_PROFILE = (1),
3315  RESOURCETYPE_DISK = (1),
3316  RESOURCETYPE_PRINT = (2),
3317  RESOURCETYPE_ANY = (0),
3318  RESOURCE_CONNECTED = (1),
3319  RESOURCE_GLOBALNET = (2),
3320  RESOURCE_REMEMBERED = (3),
3321  RESOURCEUSAGE_CONNECTABLE = (1),
3322  RESOURCEUSAGE_CONTAINER = (2),
3323  WN_BAD_NETNAME = (0x43),
3324  WN_EXTENDED_ERROR = (0x4b8),
3325  WN_MORE_DATA = (0xea),
3326  WN_NO_NETWORK = (0x4c6),
3327  WN_SUCCESS = (0),
3328  WN_ACCESS_DENIED = (0x5),
3329  WN_BAD_PROVIDER = (0x4b4),
3330  WN_NOT_AUTHENTICATED = (0x4dc),
3331  UNIVERSAL_NAME_INFO_LEVEL = (1),
3332  REMOTE_NAME_INFO_LEVEL = (2),
3333  STILL_ACTIVE = (0x103),
3334  SP_SERIALCOMM = (0x1),
3335  BAUD_075 = (0x1),
3336  BAUD_110 = (0x2),
3337  BAUD_134_5 = (0x4),
3338  BAUD_150 = (0x8),
3339  BAUD_300 = (0x10),
3340  BAUD_600 = (0x20),
3341  BAUD_1200 = (0x40),
3342  BAUD_1800 = (0x80),
3343  BAUD_2400 = (0x100),
3344  BAUD_4800 = (0x200),
3345  BAUD_7200 = (0x400),
3346  BAUD_9600 = (0x800),
3347  BAUD_14400 = (0x1000),
3348  BAUD_19200 = (0x2000),
3349  BAUD_38400 = (0x4000),
3350  BAUD_56K = (0x8000),
3351  BAUD_57600 = (0x40000),
3352  BAUD_115200 = (0x20000),
3353  BAUD_128K = (0x10000),
3354  BAUD_USER = (0x10000000),
3355  PST_FAX = (0x21),
3356  PST_LAT = (0x101),
3357  PST_MODEM = (0x6),
3358  PST_NETWORK_BRIDGE = (0x100),
3359  PST_PARALLELPORT = (0x2),
3360  PST_RS232 = (0x1),
3361  PST_RS422 = (0x3),
3362  PST_RS423 = (0x4),
3363  PST_RS449 = (0x5),
3364  PST_SCANNER = (0x22),
3365  PST_TCPIP_TELNET = (0x102),
3366  PST_UNSPECIFIED = (0),
3367  PST_X25 = (0x103),
3368  PCF_16BITMODE = (0x200),
3369  PCF_DTRDSR = (0x1),
3370  PCF_INTTIMEOUTS = (0x80),
3371  PCF_PARITY_CHECK = (0x8),
3372  PCF_RLSD = (0x4),
3373  PCF_RTSCTS = (0x2),
3374  PCF_SETXCHAR = (0x20),
3375  PCF_SPECIALCHARS = (0x100),
3376  PCF_TOTALTIMEOUTS = (0x40),
3377  PCF_XONXOFF = (0x10),
3378  SP_BAUD = (0x2),
3379  SP_DATABITS = (0x4),
3380  SP_HANDSHAKING = (0x10),
3381  SP_PARITY = (0x1),
3382  SP_PARITY_CHECK = (0x20),
3383  SP_RLSD = (0x40),
3384  SP_STOPBITS = (0x8),
3385  DATABITS_5 = (1),
3386  DATABITS_6 = (2),
3387  DATABITS_7 = (4),
3388  DATABITS_8 = (8),
3389  DATABITS_16 = (16),
3390  DATABITS_16X = (32),
3391  STOPBITS_10 = (1),
3392  STOPBITS_15 = (2),
3393  STOPBITS_20 = (4),
3394  PARITY_NONE = (256),
3395  PARITY_ODD = (512),
3396  PARITY_EVEN = (1024),
3397  PARITY_MARK = (2048),
3398  PARITY_SPACE = (4096),
3399  COMMPROP_INITIALIZED = (0xe73cf52e),
3400  CBR_110 = (110),
3401  CBR_300 = (300),
3402  CBR_600 = (600),
3403  CBR_1200 = (1200),
3404  CBR_2400 = (2400),
3405  CBR_4800 = (4800),
3406  CBR_9600 = (9600),
3407  CBR_14400 = (14400),
3408  CBR_19200 = (19200),
3409  CBR_38400 = (38400),
3410  CBR_56000 = (56000),
3411  CBR_57600 = (57600),
3412  CBR_115200 = (115200),
3413  CBR_128000 = (128000),
3414  CBR_256000 = (256000),
3415  DTR_CONTROL_DISABLE = (0),
3416  DTR_CONTROL_ENABLE = (1),
3417  DTR_CONTROL_HANDSHAKE = (2),
3418  RTS_CONTROL_DISABLE = (0),
3419  RTS_CONTROL_ENABLE = (1),
3420  RTS_CONTROL_HANDSHAKE = (2),
3421  RTS_CONTROL_TOGGLE = (3),
3422  EVENPARITY = (2),
3423  MARKPARITY = (3),
3424  NOPARITY = (0),
3425  ODDPARITY = (1),
3426  SPACEPARITY = (4),
3427  ONESTOPBIT = (0),
3428  ONE5STOPBITS = (1),
3429  TWOSTOPBITS = (2),
3430  CREATE_PROCESS_DEBUG_EVENT = (3),
3431  CREATE_THREAD_DEBUG_EVENT = (2),
3432  EXCEPTION_DEBUG_EVENT = (1),
3433  EXIT_PROCESS_DEBUG_EVENT = (5),
3434  EXIT_THREAD_DEBUG_EVENT = (4),
3435  LOAD_DLL_DEBUG_EVENT = (6),
3436  OUTPUT_DEBUG_STRING_EVENT = (8),
3437  UNLOAD_DLL_DEBUG_EVENT = (7),
3438  RIP_EVENT = (9),
3439  PROCESS_HEAP_REGION = (1),
3440  PROCESS_HEAP_UNCOMMITTED_RANGE = (2),
3441  PROCESS_HEAP_ENTRY_BUSY = (4),
3442  PROCESS_HEAP_ENTRY_MOVEABLE = (16),
3443  PROCESS_HEAP_ENTRY_DDESHARE = (32),
3444  HINSTANCE_ERROR = (32),
3445  BACKUP_DATA = (1),
3446  BACKUP_EA_DATA = (2),
3447  BACKUP_SECURITY_DATA = (3),
3448  BACKUP_ALTERNATE_DATA = (4),
3449  BACKUP_LINK = (5),
3450  STREAM_MODIFIED_WHEN_READ = (1),
3451  STREAM_CONTAINS_SECURITY = (2),
3452  STARTF_USESHOWWINDOW = (1),
3453  STARTF_USEPOSITION = (4),
3454  STARTF_USESIZE = (2),
3455  STARTF_USECOUNTCHARS = (8),
3456  STARTF_USEFILLATTRIBUTE = (16),
3457  STARTF_RUNFULLSCREEN = (32),
3458  STARTF_FORCEONFEEDBACK = (64),
3459  STARTF_FORCEOFFFEEDBACK = (128),
3460  STARTF_USESTDHANDLES = (256),
3461  STARTF_USEHOTKEY = (512),
3462  VER_PLATFORM_WIN32s = (0),
3463  VER_PLATFORM_WIN32_WINDOWS = (1),
3464  VER_PLATFORM_WIN32_NT = (2),
3465  MAXPROPPAGES = (100),
3466  PSP_DEFAULT = (0),
3467  PSP_DLGINDIRECT = (1),
3468  PSP_HASHELP = (32),
3469  PSP_USECALLBACK = (128),
3470  PSP_USEHICON = (2),
3471  PSP_USEICONID = (4),
3472  PSP_USEREFPARENT = (64),
3473  PSP_USETITLE = (8),
3474  PSP_RTLREADING = (16),
3475  PSH_DEFAULT = (0),
3476  PSH_HASHELP = (512),
3477  PSH_MODELESS = (1024),
3478  PSH_NOAPPLYNOW = (128),
3479  PSH_PROPSHEETPAGE = (8),
3480  PSH_PROPTITLE = (1),
3481  PSH_USECALLBACK = (256),
3482  PSH_USEHICON = (2),
3483  PSH_USEICONID = (4),
3484  PSH_USEPSTARTPAGE = (64),
3485  PSH_WIZARD = (32),
3486  PSH_RTLREADING = (2048),
3487  PSCB_INITIALIZED = (1),
3488  PSCB_PRECREATE = (2),
3489  PSNRET_NOERROR = (0),
3490  PSNRET_INVALID_NOCHANGEPAGE = (2),
3491  PSBTN_APPLYNOW = (4),
3492  PSBTN_BACK = (0),
3493  PSBTN_CANCEL = (5),
3494  PSBTN_FINISH = (2),
3495  PSBTN_HELP = (6),
3496  PSBTN_NEXT = (1),
3497  PSBTN_OK = (3),
3498  PSWIZB_BACK = (1),
3499  PSWIZB_NEXT = (2),
3500  PSWIZB_FINISH = (4),
3501  PSWIZB_DISABLEDFINISH = (8),
3502  ID_PSREBOOTSYSTEM = (3),
3503  ID_PSRESTARTWINDOWS = (2),
3504  WIZ_BODYCX = (184),
3505  WIZ_BODYX = (92),
3506  WIZ_CXBMP = (80),
3507  WIZ_CXDLG = (276),
3508  WIZ_CYDLG = (140),
3509 }
3510 
3511 char* VS_FILE_INFO = cast(char*) ((16));
3512 
3513 enum : DWORD 
3514 {
3515  VS_VERSION_INFO = (1),
3516  VS_FF_DEBUG = (0x1),
3517  VS_FF_INFOINFERRED = (0x10),
3518  VS_FF_PATCHED = (0x4),
3519  VS_FF_PRERELEASE = (0x2),
3520  VS_FF_PRIVATEBUILD = (0x8),
3521  VS_FF_SPECIALBUILD = (0x20),
3522  VOS_UNKNOWN = (0),
3523  VOS_DOS = (0x10000),
3524  VOS_OS216 = (0x20000),
3525  VOS_OS232 = (0x30000),
3526  VOS_NT = (0x40000),
3527  VOS_DOS_WINDOWS16 = (0x10001),
3528  VOS_DOS_WINDOWS32 = (0x10004),
3529  VOS_OS216_PM16 = (0x20002),
3530  VOS_OS232_PM32 = (0x30003),
3531  VOS_NT_WINDOWS32 = (0x40004),
3532  VFT_UNKNOWN = (0),
3533  VFT_APP = (0x1),
3534  VFT_DLL = (0x2),
3535  VFT_DRV = (0x3),
3536  VFT_FONT = (0x4),
3537  VFT_VXD = (0x5),
3538  VFT_STATIC_LIB = (0x7),
3539  VFT2_UNKNOWN = (0),
3540  VFT2_DRV_PRINTER = (0x1),
3541  VFT2_DRV_KEYBOARD = (0x2),
3542  VFT2_DRV_LANGUAGE = (0x3),
3543  VFT2_DRV_DISPLAY = (0x4),
3544  VFT2_DRV_MOUSE = (0x5),
3545  VFT2_DRV_NETWORK = (0x6),
3546  VFT2_DRV_SYSTEM = (0x7),
3547  VFT2_DRV_INSTALLABLE = (0x8),
3548  VFT2_DRV_SOUND = (0x9),
3549  VFT2_FONT_RASTER = (0x1),
3550  VFT2_FONT_VECTOR = (0x2),
3551  VFT2_FONT_TRUETYPE = (0x3),
3552  PAN_ANY = (0),
3553  PAN_NO_FIT = (1),
3554  PAN_FAMILY_TEXT_DISPLAY = (2),
3555  PAN_FAMILY_SCRIPT = (3),
3556  PAN_FAMILY_DECORATIVE = (4),
3557  PAN_FAMILY_PICTORIAL = (5),
3558  PAN_SERIF_COVE = (2),
3559  PAN_SERIF_OBTUSE_COVE = (3),
3560  PAN_SERIF_SQUARE_COVE = (4),
3561  PAN_SERIF_OBTUSE_SQUARE_COVE = (5),
3562  PAN_SERIF_SQUARE = (6),
3563  PAN_SERIF_THIN = (7),
3564  PAN_SERIF_BONE = (8),
3565  PAN_SERIF_EXAGGERATED = (9),
3566  PAN_SERIF_TRIANGLE = (10),
3567  PAN_SERIF_NORMAL_SANS = (11),
3568  PAN_SERIF_OBTUSE_SANS = (12),
3569  PAN_SERIF_PERP_SANS = (13),
3570  PAN_SERIF_FLARED = (14),
3571  PAN_SERIF_ROUNDED = (15),
3572  PAN_WEIGHT_VERY_LIGHT = (2),
3573  PAN_WEIGHT_LIGHT = (3),
3574  PAN_WEIGHT_THIN = (4),
3575  PAN_WEIGHT_BOOK = (5),
3576  PAN_WEIGHT_MEDIUM = (6),
3577  PAN_WEIGHT_DEMI = (7),
3578  PAN_WEIGHT_BOLD = (8),
3579  PAN_WEIGHT_HEAVY = (9),
3580  PAN_WEIGHT_BLACK = (10),
3581  PAN_WEIGHT_NORD = (11),
3582  PAN_PROP_OLD_STYLE = (2),
3583  PAN_PROP_MODERN = (3),
3584  PAN_PROP_EVEN_WIDTH = (4),
3585  PAN_PROP_EXPANDED = (5),
3586  PAN_PROP_CONDENSED = (6),
3587  PAN_PROP_VERY_EXPANDED = (7),
3588  PAN_PROP_VERY_CONDENSED = (8),
3589  PAN_PROP_MONOSPACED = (9),
3590  PAN_CONTRAST_NONE = (2),
3591  PAN_CONTRAST_VERY_LOW = (3),
3592  PAN_CONTRAST_LOW = (4),
3593  PAN_CONTRAST_MEDIUM_LOW = (5),
3594  PAN_CONTRAST_MEDIUM = (6),
3595  PAN_CONTRAST_MEDIUM_HIGH = (7),
3596  PAN_CONTRAST_HIGH = (8),
3597  PAN_CONTRAST_VERY_HIGH = (9),
3598  PAN_STROKE_GRADUAL_DIAG = (2),
3599  PAN_STROKE_GRADUAL_TRAN = (3),
3600  PAN_STROKE_GRADUAL_VERT = (4),
3601  PAN_STROKE_GRADUAL_HORZ = (5),
3602  PAN_STROKE_RAPID_VERT = (6),
3603  PAN_STROKE_RAPID_HORZ = (7),
3604  PAN_STROKE_INSTANT_VERT = (8),
3605  PAN_STRAIGHT_ARMS_HORZ = (2),
3606  PAN_STRAIGHT_ARMS_WEDGE = (3),
3607  PAN_STRAIGHT_ARMS_VERT = (4),
3608  PAN_STRAIGHT_ARMS_SINGLE_SERIF = (5),
3609  PAN_STRAIGHT_ARMS_DOUBLE_SERIF = (6),
3610  PAN_BENT_ARMS_HORZ = (7),
3611  PAN_BENT_ARMS_VERT = (9),
3612  PAN_BENT_ARMS_WEDGE = (8),
3613  PAN_BENT_ARMS_SINGLE_SERIF = (10),
3614  PAN_BENT_ARMS_DOUBLE_SERIF = (11),
3615  PAN_LETT_NORMAL_CONTACT = (2),
3616  PAN_LETT_NORMAL_WEIGHTED = (3),
3617  PAN_LETT_NORMAL_BOXED = (4),
3618  PAN_LETT_NORMAL_FLATTENED = (5),
3619  PAN_LETT_NORMAL_ROUNDED = (6),
3620  PAN_LETT_NORMAL_OFF_CENTER = (7),
3621  PAN_LETT_NORMAL_SQUARE = (8),
3622  PAN_LETT_OBLIQUE_CONTACT = (9),
3623  PAN_LETT_OBLIQUE_WEIGHTED = (10),
3624  PAN_LETT_OBLIQUE_BOXED = (11),
3625  PAN_LETT_OBLIQUE_FLATTENED = (12),
3626  PAN_LETT_OBLIQUE_ROUNDED = (13),
3627  PAN_LETT_OBLIQUE_OFF_CENTER = (14),
3628  PAN_LETT_OBLIQUE_SQUARE = (15),
3629  PAN_MIDLINE_STANDARD_TRIMMED = (2),
3630  PAN_MIDLINE_STANDARD_POINTED = (3),
3631  PAN_MIDLINE_STANDARD_SERIFED = (4),
3632  PAN_MIDLINE_HIGH_TRIMMED = (5),
3633  PAN_MIDLINE_HIGH_POINTED = (6),
3634  PAN_MIDLINE_HIGH_SERIFED = (7),
3635  PAN_MIDLINE_CONSTANT_TRIMMED = (8),
3636  PAN_MIDLINE_CONSTANT_POINTED = (9),
3637  PAN_MIDLINE_CONSTANT_SERIFED = (10),
3638  PAN_MIDLINE_LOW_TRIMMED = (11),
3639  PAN_MIDLINE_LOW_POINTED = (12),
3640  PAN_MIDLINE_LOW_SERIFED = (13),
3641  PAN_XHEIGHT_CONSTANT_SMALL = (2),
3642  PAN_XHEIGHT_CONSTANT_STD = (3),
3643  PAN_XHEIGHT_CONSTANT_LARGE = (4),
3644  PAN_XHEIGHT_DUCKING_SMALL = (5),
3645  PAN_XHEIGHT_DUCKING_STD = (6),
3646  PAN_XHEIGHT_DUCKING_LARGE = (7),
3647  PC_EXPLICIT = (2),
3648  PC_NOCOLLAPSE = (4),
3649  PC_RESERVED = (1),
3650  BS_DIBPATTERN = (5),
3651  BS_DIBPATTERN8X8 = (8),
3652  BS_DIBPATTERNPT = (6),
3653  BS_HATCHED = (2),
3654  BS_HOLLOW = (1),
3655  BS_NULL = (1),
3656  BS_PATTERN = (3),
3657  BS_PATTERN8X8 = (7),
3658  BS_SOLID = (0),
3659  DM_ORIENTATION = (0x1),
3660  DM_PAPERSIZE = (0x2),
3661  DM_PAPERLENGTH = (0x4),
3662  DM_PAPERWIDTH = (0x8),
3663  DM_SCALE = (0x10),
3664  DM_COPIES = (0x100),
3665  DM_DEFAULTSOURCE = (0x200),
3666  DM_PRINTQUALITY = (0x400),
3667  DM_COLOR = (0x800),
3668  DM_DUPLEX = (0x1000),
3669  DM_YRESOLUTION = (0x2000),
3670  DM_TTOPTION = (0x4000),
3671  DM_COLLATE = (0x8000),
3672  DM_FORMNAME = (0x10000),
3673  DM_LOGPIXELS = (0x20000),
3674  DM_ICMMETHOD = (0x800000),
3675  DM_ICMINTENT = (0x1000000),
3676  DM_MEDIATYPE = (0x2000000),
3677  DM_DITHERTYPE = (0x4000000),
3678  DMORIENT_LANDSCAPE = (2),
3679  DMORIENT_PORTRAIT = (1),
3680  DMPAPER_LETTER = (1),
3681  DMPAPER_LEGAL = (5),
3682  DMPAPER_A4 = (9),
3683  DMPAPER_CSHEET = (24),
3684  DMPAPER_DSHEET = (25),
3685  DMPAPER_ESHEET = (26),
3686  DMPAPER_LETTERSMALL = (2),
3687  DMPAPER_TABLOID = (3),
3688  DMPAPER_LEDGER = (4),
3689  DMPAPER_STATEMENT = (6),
3690  DMPAPER_EXECUTIVE = (7),
3691  DMPAPER_A3 = (8),
3692  DMPAPER_A4SMALL = (10),
3693  DMPAPER_A5 = (11),
3694  DMPAPER_B4 = (12),
3695  DMPAPER_B5 = (13),
3696  DMPAPER_FOLIO = (14),
3697  DMPAPER_QUARTO = (15),
3698  DMPAPER_10X14 = (16),
3699  DMPAPER_11X17 = (17),
3700  DMPAPER_NOTE = (18),
3701  DMPAPER_ENV_9 = (19),
3702  DMPAPER_ENV_10 = (20),
3703  DMPAPER_ENV_11 = (21),
3704  DMPAPER_ENV_12 = (22),
3705  DMPAPER_ENV_14 = (23),
3706  DMPAPER_ENV_DL = (27),
3707  DMPAPER_ENV_C5 = (28),
3708  DMPAPER_ENV_C3 = (29),
3709  DMPAPER_ENV_C4 = (30),
3710  DMPAPER_ENV_C6 = (31),
3711  DMPAPER_ENV_C65 = (32),
3712  DMPAPER_ENV_B4 = (33),
3713  DMPAPER_ENV_B5 = (34),
3714  DMPAPER_ENV_B6 = (35),
3715  DMPAPER_ENV_ITALY = (36),
3716  DMPAPER_ENV_MONARCH = (37),
3717  DMPAPER_ENV_PERSONAL = (38),
3718  DMPAPER_FANFOLD_US = (39),
3719  DMPAPER_FANFOLD_STD_GERMAN = (40),
3720  DMPAPER_FANFOLD_LGL_GERMAN = (41),
3721  DMRES_HIGH = -((4)),
3722  DMRES_MEDIUM = -((3)),
3723  DMRES_LOW = -((2)),
3724  DMRES_DRAFT = -((1)),
3725  DMCOLOR_COLOR = (2),
3726  DMCOLOR_MONOCHROME = (1),
3727  DMDUP_SIMPLEX = (1),
3728  DMDUP_HORIZONTAL = (3),
3729  DMDUP_VERTICAL = (2),
3730  DMTT_BITMAP = (1),
3731  DMTT_DOWNLOAD = (2),
3732  DMTT_SUBDEV = (3),
3733  DMCOLLATE_TRUE = (1),
3734  DMCOLLATE_FALSE = (0),
3735  DM_GRAYSCALE = (1),
3736  DM_INTERLACED = (2),
3737  DMICMMETHOD_NONE = (1),
3738  DMICMMETHOD_SYSTEM = (2),
3739  DMICMMETHOD_DRIVER = (3),
3740  DMICMMETHOD_DEVICE = (4),
3741  DMICMMETHOD_USER = (256),
3742  DMICM_SATURATE = (1),
3743  DMICM_CONTRAST = (2),
3744  DMICM_COLORMETRIC = (3),
3745  DMICM_USER = (256),
3746  DMMEDIA_STANDARD = (1),
3747  DMMEDIA_GLOSSY = (3),
3748  DMMEDIA_TRANSPARENCY = (2),
3749  DMMEDIA_USER = (256),
3750  DMDITHER_NONE = (1),
3751  DMDITHER_COARSE = (2),
3752  DMDITHER_FINE = (3),
3753  DMDITHER_LINEART = (4),
3754  DMDITHER_GRAYSCALE = (10),
3755  DMDITHER_USER = (256),
3756  RDH_RECTANGLES = (1),
3757  TT_POLYGON_TYPE = (24),
3758  TT_PRIM_LINE = (1),
3759  TT_PRIM_QSPLINE = (2),
3760  GCPCLASS_ARABIC = (2),
3761  GCPCLASS_HEBREW = (2),
3762  GCPCLASS_LATIN = (1),
3763  GCPCLASS_LATINNUMBER = (5),
3764  GCPCLASS_LOCALNUMBER = (4),
3765  GCPCLASS_LATINNUMERICSEPARATOR = (7),
3766  GCPCLASS_LATINNUMERICTERMINATOR = (6),
3767  GCPCLASS_NEUTRAL = (3),
3768  GCPCLASS_NUMERICSEPARATOR = (8),
3769  GCPCLASS_PREBOUNDLTR = (128),
3770  GCPCLASS_PREBOUNDRTL = (64),
3771  GCPCLASS_POSTBOUNDLTR = (32),
3772  GCPCLASS_POSTBOUNDRTL = (16),
3773  GCPGLYPH_LINKBEFORE = (32768),
3774  GCPGLYPH_LINKAFTER = (16384),
3775  TT_AVAILABLE = (1),
3776  TT_ENABLED = (2),
3777  CA_NEGATIVE = (1),
3778  CA_LOG_FILTER = (2),
3779  ILLUMINANT_DEVICE_DEFAULT = (0),
3780  ILLUMINANT_A = (1),
3781  ILLUMINANT_B = (2),
3782  ILLUMINANT_C = (3),
3783  ILLUMINANT_D50 = (4),
3784  ILLUMINANT_D55 = (5),
3785  ILLUMINANT_D65 = (6),
3786  ILLUMINANT_D75 = (7),
3787  ILLUMINANT_F2 = (8),
3788  ILLUMINANT_TUNGSTEN = (1),
3789  ILLUMINANT_DAYLIGHT = (3),
3790  ILLUMINANT_FLUORESCENT = (8),
3791  ILLUMINANT_NTSC = (3),
3792  DI_APPBANDING = (1),
3793  EMR_HEADER = (1),
3794  ENHMETA_SIGNATURE = (1179469088),
3795  ENM_CHANGE = (1),
3796  ENM_CORRECTTEXT = (4194304),
3797  ENM_DROPFILES = (1048576),
3798  ENM_KEYEVENTS = (65536),
3799  ENM_MOUSEEVENTS = (131072),
3800  ENM_PROTECTED = (2097152),
3801  ENM_REQUESTRESIZE = (262144),
3802  ENM_SCROLL = (4),
3803  ENM_SELCHANGE = (524288),
3804  ENM_UPDATE = (2),
3805  ENM_NONE = (0),
3806  ES_DISABLENOSCROLL = (8192),
3807  ES_EX_NOCALLOLEINIT = (16777216),
3808  ES_NOIME = (524288),
3809  ES_SAVESEL = (32768),
3810  ES_SELFIME = (262144),
3811  ES_SUNKEN = (16384),
3812  ES_VERTICAL = (4194304),
3813  ES_SELECTIONBAR = (16777216),
3814  ECOOP_SET = (1),
3815  ECOOP_OR = (2),
3816  ECOOP_AND = (3),
3817  ECOOP_XOR = (4),
3818  ECO_AUTOWORDSELECTION = (1),
3819  ECO_AUTOVSCROLL = (64),
3820  ECO_AUTOHSCROLL = (128),
3821  ECO_NOHIDESEL = (256),
3822  ECO_READONLY = (2048),
3823  ECO_WANTRETURN = (4096),
3824  ECO_SAVESEL = (32768),
3825  ECO_SELECTIONBAR = (16777216),
3826  ECO_VERTICAL = (4194304),
3827  SCF_WORD = (2),
3828  SCF_SELECTION = (1),
3829  SF_TEXT = (1),
3830  SF_RTF = (2),
3831  SF_RTFNOOBJS = (3),
3832  SF_TEXTIZED = (4),
3833  SFF_SELECTION = (32768),
3834  SFF_PLAINRTF = (16384),
3835  WB_CLASSIFY = (3),
3836  WB_LEFTBREAK = (6),
3837  WB_PREVBREAK = (6),
3838  WB_MOVEWORDLEFT = (4),
3839  WB_MOVEWORDPREV = (4),
3840  WB_MOVEWORDRIGHT = (5),
3841  WB_MOVEWORDNEXT = (5),
3842  WB_RIGHTBREAK = (7),
3843  WB_NEXTBREAK = (7),
3844  PC_LEADING = (2),
3845  PC_FOLLOWING = (1),
3846  PC_DELIMITER = (4),
3847  PC_OVERFLOW = (3),
3848  WBF_WORDWRAP = (16),
3849  WBF_WORDBREAK = (32),
3850  WBF_OVERFLOW = (64),
3851  WBF_LEVEL1 = (128),
3852  WBF_LEVEL2 = (256),
3853  WBF_CUSTOM = (512),
3854  WBF_BREAKAFTER = (64),
3855  WBF_BREAKLINE = (32),
3856  WBF_ISWHITE = (16),
3857  CFM_BOLD = (1),
3858  CFM_COLOR = (1073741824),
3859  CFM_FACE = (536870912),
3860  CFM_ITALIC = (2),
3861  CFM_OFFSET = (268435456),
3862  CFM_PROTECTED = (16),
3863  CFM_SIZE = (0x80000000),
3864  CFM_STRIKEOUT = (8),
3865  CFM_UNDERLINE = (4),
3866  CFE_AUTOCOLOR = (1073741824),
3867  CFE_BOLD = (1),
3868  CFE_ITALIC = (2),
3869  CFE_STRIKEOUT = (8),
3870  CFE_UNDERLINE = (4),
3871  CFE_PROTECTED = (16),
3872  PFM_ALIGNMENT = (8),
3873  PFM_NUMBERING = (32),
3874  PFM_OFFSET = (4),
3875  PFM_OFFSETINDENT = (0x80000000),
3876  PFM_RIGHTINDENT = (2),
3877  PFM_STARTINDENT = (1),
3878  PFM_TABSTOPS = (16),
3879  PFN_BULLET = (1),
3880  PFA_LEFT = (1),
3881  PFA_RIGHT = (2),
3882  PFA_CENTER = (3),
3883  SEL_EMPTY = (0),
3884  SEL_TEXT = (1),
3885  SEL_OBJECT = (2),
3886  SEL_MULTICHAR = (4),
3887  SEL_MULTIOBJECT = (8),
3888 }
3889 
3890 const 
3891 {
3892 char* CF_RTF = ("Rich Text Format");
3893 char* CF_RETEXTOBJ = ("RichEdit Text and Objects");
3894 }
3895 
3896 enum : DWORD 
3897 {
3898  ODT_BUTTON = (4),
3899  ODT_COMBOBOX = (3),
3900  ODT_LISTBOX = (2),
3901  ODT_LISTVIEW = (102),
3902  ODT_MENU = (1),
3903  ODT_STATIC = (5),
3904  ODT_TAB = (101),
3905  ODT_HEADER = (100),
3906  ODA_DRAWENTIRE = (1),
3907  ODA_FOCUS = (4),
3908  ODA_SELECT = (2),
3909  ODS_CHECKED = (8),
3910  ODS_COMBOBOXEDIT = (4096),
3911  ODS_DEFAULT = (32),
3912  ODS_DISABLED = (4),
3913  ODS_FOCUS = (16),
3914  ODS_GRAYED = (2),
3915  ODS_SELECTED = (1),
3916 }
3917 const 
3918 {
3919 char* ANIMATE_CLASSW = ("SysAnimate32");
3920 char* HOTKEY_CLASSW = ("msctls_hotkey32");
3921 char* PROGRESS_CLASSW = ("msctls_progress32");
3922 char* STATUSCLASSNAMEW = ("msctls_statusbar32");
3923 char* TOOLBARCLASSNAMEW = ("ToolbarWindow32");
3924 char* TOOLTIPS_CLASSW = ("tooltips_class32");
3925 char* TRACKBAR_CLASSW = ("msctls_trackbar32");
3926 char* UPDOWN_CLASSW = ("msctls_updown32");
3927 char* WC_HEADERW = ("SysHeader32");
3928 char* WC_LISTVIEWW = ("SysListView32");
3929 char* WC_TABCONTROLW = ("SysTabControl32");
3930 char* WC_TREEVIEWW = ("SysTreeView32");
3931 }
3932 
3933 enum : DWORD 
3934 {
3935  CCS_ADJUSTABLE = (0x20),
3936  CCS_BOTTOM = (0x3),
3937  CCS_NODIVIDER = (0x40),
3938  CCS_NOMOVEY = (0x2),
3939  CCS_NOPARENTALIGN = (0x8),
3940  CCS_NORESIZE = (0x4),
3941  CCS_TOP = (0x1),
3942 }
3943 
3944 const 
3945 {
3946 char* ANIMATE_CLASSA = ("SysAnimate32");
3947 char* HOTKEY_CLASSA = ("msctls_hotkey32");
3948 char* PROGRESS_CLASSA = ("msctls_progress32");
3949 char* STATUSCLASSNAMEA = ("msctls_statusbar32");
3950 char* TOOLBARCLASSNAMEA = ("ToolbarWindow32");
3951 char* TOOLTIPS_CLASSA = ("tooltips_class32");
3952 char* TRACKBAR_CLASSA = ("msctls_trackbar32");
3953 char* UPDOWN_CLASSA = ("msctls_updown32");
3954 char* WC_HEADERA = ("SysHeader32");
3955 char* WC_LISTVIEWA = ("SysListView32");
3956 char* WC_TABCONTROLA = ("SysTabControl32");
3957 char* WC_TREEVIEWA = ("SysTreeView32");
3958 char* ANIMATE_CLASS = (ANIMATE_CLASSA);
3959 char* HOTKEY_CLASS = (HOTKEY_CLASSA);
3960 char* PROGRESS_CLASS = (PROGRESS_CLASSA);
3961 char* STATUSCLASSNAME = (STATUSCLASSNAMEA);
3962 char* TOOLBARCLASSNAME = (TOOLBARCLASSNAMEA);
3963 char* TOOLTIPS_CLASS = (TOOLTIPS_CLASSA);
3964 char* TRACKBAR_CLASS = (TRACKBAR_CLASSA);
3965 char* UPDOWN_CLASS = (UPDOWN_CLASSA);
3966 char* WC_HEADER = (WC_HEADERA);
3967 char* WC_LISTVIEW = (WC_LISTVIEWA);
3968 char* WC_TABCONTROL = (WC_TABCONTROLA);
3969 char* WC_TREEVIEW = (WC_TREEVIEWA);
3970 }
3971 
3972 enum : DWORD 
3973 {
3974  HDS_BUTTONS = (2),
3975  HDS_HIDDEN = (8),
3976  HDS_HORZ = (0),
3977  HDI_BITMAP = (16),
3978  HDI_FORMAT = (4),
3979  HDI_HEIGHT = (1),
3980  HDI_LPARAM = (8),
3981  HDI_TEXT = (2),
3982  HDI_WIDTH = (1),
3983  HDF_CENTER = (2),
3984  HDF_LEFT = (0),
3985  HDF_RIGHT = (1),
3986  HDF_RTLREADING = (4),
3987  HDF_BITMAP = (8192),
3988  HDF_OWNERDRAW = (32768),
3989  HDF_STRING = (16384),
3990  HDF_JUSTIFYMASK = (3),
3991  HHT_NOWHERE = (1),
3992  HHT_ONDIVIDER = (4),
3993  HHT_ONDIVOPEN = (8),
3994  HHT_ONHEADER = (2),
3995  HHT_TOLEFT = (2048),
3996  HHT_TORIGHT = (1024),
3997  HINST_COMMCTRL = -(1),
3998  IDB_STD_LARGE_COLOR = (1),
3999  IDB_STD_SMALL_COLOR = (0),
4000  IDB_VIEW_LARGE_COLOR = (5),
4001  IDB_VIEW_SMALL_COLOR = (4),
4002  STD_COPY = (1),
4003  STD_CUT = (0),
4004  STD_DELETE = (5),
4005  STD_FILENEW = (6),
4006  STD_FILEOPEN = (7),
4007  STD_FILESAVE = (8),
4008  STD_FIND = (12),
4009  STD_HELP = (11),
4010  STD_PASTE = (2),
4011  STD_PRINT = (14),
4012  STD_PRINTPRE = (9),
4013  STD_PROPERTIES = (10),
4014  STD_REDOW = (4),
4015  STD_REPLACE = (13),
4016  STD_UNDO = (3),
4017  VIEW_LARGEICONS = (0),
4018  VIEW_SMALLICONS = (1),
4019  VIEW_LIST = (2),
4020  VIEW_DETAILS = (3),
4021  VIEW_SORTNAME = (4),
4022  VIEW_SORTSIZE = (5),
4023  VIEW_SORTDATE = (6),
4024  VIEW_SORTTYPE = (7),
4025  TBSTYLE_ALTDRAG = (1024),
4026  TBSTYLE_TOOLTIPS = (256),
4027  TBSTYLE_WRAPABLE = (512),
4028  TBSTYLE_BUTTON = (0),
4029  TBSTYLE_CHECK = (2),
4030  TBSTYLE_CHECKGROUP = (6),
4031  TBSTYLE_GROUP = (4),
4032  TBSTYLE_SEP = (1),
4033  TBSTATE_CHECKED = (1),
4034  TBSTATE_ENABLED = (4),
4035  TBSTATE_HIDDEN = (8),
4036  TBSTATE_INDETERMINATE = (16),
4037  TBSTATE_PRESSED = (2),
4038  TBSTATE_WRAP = (32),
4039  TTS_ALWAYSTIP = (1),
4040  TTS_NOPREFIX = (2),
4041  TTF_IDISHWND = (1),
4042  TTF_CENTERTIP = (2),
4043  TTF_RTLREADING = (4),
4044  TTF_SUBCLASS = (16),
4045  TTDT_AUTOMATIC = (0),
4046  TTDT_AUTOPOP = (2),
4047  TTDT_INITIAL = (3),
4048  TTDT_RESHOW = (1),
4049  SBARS_SIZEGRIP = (256),
4050  DL_MOVECURSOR = (3),
4051  DL_COPYCURSOR = (2),
4052  DL_STOPCURSOR = (1),
4053  UDS_ALIGNLEFT = (8),
4054  UDS_ALIGNRIGHT = (4),
4055  UDS_ARROWKEYS = (32),
4056  UDS_AUTOBUDDY = (16),
4057  UDS_HORZ = (64),
4058  UDS_NOTHOUSANDS = (128),
4059  UDS_SETBUDDYINT = (2),
4060  UDS_WRAP = (1),
4061  UD_MAXVAL = (32767),
4062  UD_MINVAL = -((32767)),
4063  HOTKEYF_ALT = (4),
4064  HOTKEYF_CONTROL = (2),
4065  HOTKEYF_EXT = (8),
4066  HOTKEYF_SHIFT = (1),
4067  HKCOMB_A = (8),
4068  HKCOMB_C = (4),
4069  HKCOMB_CA = (64),
4070  HKCOMB_NONE = (1),
4071  HKCOMB_S = (2),
4072  HKCOMB_SA = (32),
4073  HKCOMB_SC = (16),
4074  HKCOMB_SCA = (128),
4075  TBS_HORZ = (0),
4076  TBS_VERT = (2),
4077  TBS_AUTOTICKS = (1),
4078  TBS_NOTICKS = (16),
4079  TBS_TOP = (4),
4080  TBS_BOTTOM = (0),
4081  TBS_LEFT = (4),
4082  TBS_RIGHT = (0),
4083  TBS_BOTH = (8),
4084  TBS_ENABLESELRANGE = (32),
4085  TBS_FIXEDLENGTH = (64),
4086  TBS_NOTHUMB = (128),
4087  TB_BOTTOM = (7),
4088  TB_ENDTRACK = (8),
4089  TB_LINEDOWN = (1),
4090  TB_LINEUP = (0),
4091  TB_PAGEDOWN = (3),
4092  TB_PAGEUP = (2),
4093  TB_THUMBPOSITION = (4),
4094  TB_THUMBTRACK = (5),
4095  TB_TOP = (6),
4096  LVS_ALIGNLEFT = (2048),
4097  LVS_ALIGNTOP = (0),
4098  LVS_AUTOARRANGE = (256),
4099  LVS_EDITLABELS = (512),
4100  LVS_ICON = (0),
4101  LVS_LIST = (3),
4102  LVS_NOCOLUMNHEADER = (16384),
4103  LVS_NOLABELWRAP = (128),
4104  LVS_NOSCROLL = (8192),
4105  LVS_NOSORTHEADER = (32768),
4106  LVS_OWNERDRAWFIXED = (1024),
4107  LVS_REPORT = (1),
4108  LVS_SHAREIMAGELISTS = (64),
4109  LVS_SHOWSELALWAYS = (8),
4110  LVS_SINGLESEL = (4),
4111  LVS_SMALLICON = (2),
4112  LVS_SORTASCENDING = (16),
4113  LVS_SORTDESCENDING = (32),
4114  LVS_TYPESTYLEMASK = (64512),
4115  LVSIL_NORMAL = (0),
4116  LVSIL_SMALL = (1),
4117  LVSIL_STATE = (2),
4118  LVIS_CUT = (4),
4119  LVIS_DROPHILITED = (8),
4120  LVIS_FOCUSED = (1),
4121  LVIS_SELECTED = (2),
4122  LVIS_OVERLAYMASK = (3840),
4123  LVIS_STATEIMAGEMASK = (61440),
4124 }
4125 
4126 const 
4127 {
4128  LPWSTR LPSTR_TEXTCALLBACKW = cast(LPWSTR)(-(1));
4129  LPSTR  LPSTR_TEXTCALLBACKA = cast(LPSTR)(-(1));
4130  version(Win32SansUnicode){
4131   alias LPSTR_TEXTCALLBACKA LPSTR_TEXTCALLBACK;
4132  }
4133  else{
4134   alias LPSTR_TEXTCALLBACKW LPSTR_TEXTCALLBACK;
4135  }
4136 }
4137 
4138 enum : DWORD 
4139 {
4140  LVIF_TEXT = (1),
4141  LVIF_IMAGE = (2),
4142  LVIF_PARAM = (4),
4143  LVIF_STATE = (8),
4144  LVIF_DI_SETITEM = (4096),
4145  LVNI_ABOVE = (256),
4146  LVNI_ALL = (0),
4147  LVNI_BELOW = (512),
4148  LVNI_TOLEFT = (1024),
4149  LVNI_TORIGHT = (2048),
4150  LVNI_CUT = (4),
4151  LVNI_DROPHILITED = (8),
4152  LVNI_FOCUSED = (1),
4153  LVNI_SELECTED = (2),
4154  LVFI_PARAM = (1),
4155  LVFI_PARTIAL = (8),
4156  LVFI_STRING = (2),
4157  LVFI_WRAP = (32),
4158  LVFI_NEARESTXY = (64),
4159  LVHT_ABOVE = (8),
4160  LVHT_BELOW = (16),
4161  LVHT_NOWHERE = (1),
4162  LVHT_ONITEMICON = (2),
4163  LVHT_ONITEMLABEL = (4),
4164  LVHT_ONITEMSTATEICON = (8),
4165  LVHT_TOLEFT = (64),
4166  LVHT_TORIGHT = (32),
4167  LVCF_FMT = (1),
4168  LVCF_SUBITEM = (8),
4169  LVCF_TEXT = (4),
4170  LVCF_WIDTH = (2),
4171  LVCFMT_CENTER = (2),
4172  LVCFMT_LEFT = (0),
4173  LVCFMT_RIGHT = (1),
4174  LVIR_BOUNDS = (0),
4175  LVIR_ICON = (1),
4176  LVIR_LABEL = (2),
4177  LVIR_SELECTBOUNDS = (3),
4178  LVA_ALIGNLEFT = (1),
4179  LVA_ALIGNTOP = (2),
4180  LVA_DEFAULT = (0),
4181  LVA_SNAPTOGRID = (5),
4182  LVSCW_AUTOSIZE = -((1)),
4183  LVSCW_AUTOSIZE_USEHEADER = -((2)),
4184  TVS_DISABLEDRAGDROP = (16),
4185  TVS_EDITLABELS = (8),
4186  TVS_HASBUTTONS = (1),
4187  TVS_HASLINES = (2),
4188  TVS_LINESATROOT = (4),
4189  TVS_SHOWSELALWAYS = (32),
4190  TVIS_BOLD = (16),
4191  TVIS_CUT = (4),
4192  TVIS_DROPHILITED = (8),
4193  TVIS_EXPANDED = (32),
4194  TVIS_EXPANDEDONCE = (64),
4195  TVIS_FOCUSED = (1),
4196  TVIS_OVERLAYMASK = (3840),
4197  TVIS_SELECTED = (2),
4198  TVIS_STATEIMAGEMASK = (61440),
4199  TVIS_USERMASK = (61440),
4200  TVIF_CHILDREN = (64),
4201  TVIF_HANDLE = (16),
4202  TVIF_IMAGE = (2),
4203  TVIF_PARAM = (4),
4204  TVIF_SELECTEDIMAGE = (32),
4205  TVIF_STATE = (8),
4206  TVIF_TEXT = (1),
4207  I_CHILDRENCALLBACK = -((1)),
4208  I_IMAGECALLBACK = -((1)),
4209 }
4210 
4211 struct TREEITEM
4212 {
4213 }
4214 
4215 alias TREEITEM* HTREEITEM;
4216 alias TREEITEM TTREEITEM;
4217 alias TREEITEM* PTREEITEM;
4218 
4219 enum : DWORD 
4220 {
4221  TVI_ROOT = (0xFFFF0000),
4222  TVI_FIRST = (0xFFFF0001),
4223  TVI_LAST = (0xFFFF0002),
4224  TVI_SORT = (0xFFFF0003),
4225  TVHT_ABOVE = (256),
4226  TVHT_BELOW = (512),
4227  TVHT_NOWHERE = (1),
4228  TVHT_ONITEM = (70),
4229  TVHT_ONITEMBUTTON = (16),
4230  TVHT_ONITEMICON = (2),
4231  TVHT_ONITEMINDENT = (8),
4232  TVHT_ONITEMLABEL = (4),
4233  TVHT_ONITEMRIGHT = (32),
4234  TVHT_ONITEMSTATEICON = (64),
4235  TVHT_TOLEFT = (2048),
4236  TVHT_TORIGHT = (1024),
4237  TVE_COLLAPSE = (1),
4238  TVE_COLLAPSERESET = (32768),
4239  TVE_EXPAND = (2),
4240  TVE_TOGGLE = (3),
4241  TVSIL_NORMAL = (0),
4242  TVSIL_STATE = (2),
4243  TVGN_CARET = (9),
4244  TVGN_CHILD = (4),
4245  TVGN_DROPHILITE = (8),
4246  TVGN_FIRSTVISIBLE = (5),
4247  TVGN_NEXT = (1),
4248  TVGN_NEXTVISIBLE = (6),
4249  TVGN_PARENT = (3),
4250  TVGN_PREVIOUS = (2),
4251  TVGN_PREVIOUSVISIBLE = (7),
4252  TVGN_ROOT = (0),
4253  TVC_BYKEYBOARD = (2),
4254  TVC_BYMOUSE = (1),
4255  TVC_UNKNOWN = (0),
4256  TCS_BUTTONS = (256),
4257  TCS_FIXEDWIDTH = (1024),
4258  TCS_FOCUSNEVER = (32768),
4259  TCS_FOCUSONBUTTONDOWN = (4096),
4260  TCS_FORCEICONLEFT = (16),
4261  TCS_FORCELABELLEFT = (32),
4262  TCS_MULTILINE = (512),
4263  TCS_OWNERDRAWFIXED = (8192),
4264  TCS_RAGGEDRIGHT = (2048),
4265  TCS_RIGHTJUSTIFY = (0),
4266  TCS_SINGLELINE = (0),
4267  TCS_TABS = (0),
4268  TCS_TOOLTIPS = (16384),
4269  TCIF_TEXT = (1),
4270  TCIF_IMAGE = (2),
4271  TCIF_PARAM = (8),
4272  TCIF_RTLREADING = (4),
4273  TCHT_NOWHERE = (1),
4274  TCHT_ONITEM = (6),
4275  TCHT_ONITEMICON = (2),
4276  TCHT_ONITEMLABEL = (4),
4277  ACS_AUTOPLAY = (4),
4278  ACS_CENTER = (1),
4279  ACS_TRANSPARENT = (2),
4280  DIALOPTION_BILLING = (64),
4281  DIALOPTION_QUIET = (128),
4282  DIALOPTION_DIALTONE = (256),
4283  MDMVOLFLAG_LOW = (1),
4284  MDMVOLFLAG_MEDIUM = (2),
4285  MDMVOLFLAG_HIGH = (4),
4286  MDMVOL_LOW = (0),
4287  MDMVOL_MEDIUM = (1),
4288  MDMVOL_HIGH = (2),
4289  MDMSPKRFLAG_OFF = (1),
4290  MDMSPKRFLAG_DIAL = (2),
4291  MDMSPKRFLAG_ON = (4),
4292  MDMSPKRFLAG_CALLSETUP = (8),
4293  MDMSPKR_OFF = (0),
4294  MDMSPKR_DIAL = (1),
4295  MDMSPKR_ON = (2),
4296  MDMSPKR_CALLSETUP = (3),
4297  MDM_BLIND_DIAL = (512),
4298  MDM_CCITT_OVERRIDE = (64),
4299  MDM_CELLULAR = (8),
4300  MDM_COMPRESSION = (1),
4301  MDM_ERROR_CONTROL = (2),
4302  MDM_FLOWCONTROL_HARD = (16),
4303  MDM_FLOWCONTROL_SOFT = (32),
4304  MDM_FORCED_EC = (4),
4305  MDM_SPEED_ADJUST = (128),
4306  MDM_TONE_DIAL = (256),
4307  MDM_V23_OVERRIDE = (1024),
4308  LANG_BULGARIAN = (2),
4309  LANG_CHINESE = (4),
4310  LANG_CROATIAN = (26),
4311  LANG_CZECH = (5),
4312  LANG_DANISH = (6),
4313  LANG_DUTCH = (19),
4314  LANG_ENGLISH = (9),
4315  LANG_FINNISH = (11),
4316  LANG_FRENCH = (12),
4317  LANG_GERMAN = (7),
4318  LANG_GREEK = (8),
4319  LANG_HUNGARIAN = (14),
4320  LANG_ICELANDIC = (15),
4321  LANG_ITALIAN = (16),
4322  LANG_JAPANESE = (17),
4323  LANG_KOREAN = (18),
4324  LANG_NEUTRAL = (0),
4325  LANG_NORWEGIAN = (20),
4326  LANG_POLISH = (21),
4327  LANG_PORTUGUESE = (22),
4328  LANG_ROMANIAN = (24),
4329  LANG_RUSSIAN = (25),
4330  LANG_SLOVAK = (27),
4331  LANG_SLOVENIAN = (36),
4332  LANG_SPANISH = (10),
4333  LANG_SWEDISH = (29),
4334  LANG_TURKISH = (31),
4335  SUBLANG_CHINESE_SIMPLIFIED = (2),
4336  SUBLANG_CHINESE_TRADITIONAL = (1),
4337  SUBLANG_CHINESE_HONGKONG = (3),
4338  SUBLANG_CHINESE_SINGAPORE = (4),
4339  SUBLANG_DEFAULT = (1),
4340  SUBLANG_DUTCH = (1),
4341  SUBLANG_DUTCH_BELGIAN = (2),
4342  SUBLANG_ENGLISH_AUS = (3),
4343  SUBLANG_ENGLISH_CAN = (4),
4344  SUBLANG_ENGLISH_EIRE = (6),
4345  SUBLANG_ENGLISH_NZ = (5),
4346  SUBLANG_ENGLISH_UK = (2),
4347  SUBLANG_ENGLISH_US = (1),
4348  SUBLANG_FRENCH = (1),
4349  SUBLANG_FRENCH_BELGIAN = (2),
4350  SUBLANG_FRENCH_CANADIAN = (3),
4351  SUBLANG_FRENCH_SWISS = (4),
4352  SUBLANG_GERMAN = (1),
4353  SUBLANG_GERMAN_AUSTRIAN = (3),
4354  SUBLANG_GERMAN_SWISS = (2),
4355  SUBLANG_ITALIAN = (1),
4356  SUBLANG_ITALIAN_SWISS = (2),
4357  SUBLANG_NEUTRAL = (0),
4358  SUBLANG_NORWEGIAN_BOKMAL = (1),
4359  SUBLANG_NORWEGIAN_NYNORSK = (2),
4360  SUBLANG_PORTUGUESE = (2),
4361  SUBLANG_PORTUGUESE_BRAZILIAN = (1),
4362  SUBLANG_SPANISH = (1),
4363  SUBLANG_SPANISH_MEXICAN = (2),
4364  SUBLANG_SPANISH_MODERN = (3),
4365  SUBLANG_SYS_DEFAULT = (2),
4366  NLS_VALID_LOCALE_MASK = (1048575),
4367  SORT_DEFAULT = (0),
4368  SORT_JAPANESE_XJIS = (0),
4369  SORT_JAPANESE_UNICODE = (1),
4370  SORT_CHINESE_BIG5 = (0),
4371  SORT_CHINESE_UNICODE = (1),
4372  SORT_KOREAN_KSC = (0),
4373  SORT_KOREAN_UNICODE = (1),
4374  PROCESSOR_INTEL_386 = (386),
4375  PROCESSOR_INTEL_486 = (486),
4376  PROCESSOR_INTEL_PENTIUM = (586),
4377  PROCESSOR_MIPS_R4000 = (4000),
4378  PROCESSOR_ALPHA_21064 = (21064),
4379  COMPRESSION_FORMAT_NONE = (0),
4380  COMPRESSION_FORMAT_DEFAULT = (1),
4381  COMPRESSION_FORMAT_LZNT1 = (2),
4382  TAPE_DRIVE_COMPRESSION = (131072),
4383  TAPE_DRIVE_ECC = (65536),
4384  TAPE_DRIVE_ERASE_BOP_ONLY = (64),
4385  TAPE_DRIVE_ERASE_LONG = (32),
4386  TAPE_DRIVE_ERASE_IMMEDIATE = (128),
4387  TAPE_DRIVE_ERASE_SHORT = (16),
4388  TAPE_DRIVE_FIXED = (1),
4389  TAPE_DRIVE_FIXED_BLOCK = (1024),
4390  TAPE_DRIVE_INITIATOR = (4),
4391  TAPE_DRIVE_PADDING = (262144),
4392  TAPE_DRIVE_GET_ABSOLUTE_BLK = (1048576),
4393  TAPE_DRIVE_GET_LOGICAL_BLK = (2097152),
4394  TAPE_DRIVE_REPORT_SMKS = (524288),
4395  TAPE_DRIVE_SELECT = (2),
4396  TAPE_DRIVE_SET_EOT_WZ_SIZE = (4194304),
4397  TAPE_DRIVE_TAPE_CAPACITY = (256),
4398  TAPE_DRIVE_TAPE_REMAINING = (512),
4399  TAPE_DRIVE_VARIABLE_BLOCK = (2048),
4400  TAPE_DRIVE_WRITE_PROTECT = (4096),
4401  TAPE_DRIVE_ABS_BLK_IMMED = -((2147475456)),
4402  TAPE_DRIVE_ABSOLUTE_BLK = -((2147479552)),
4403  TAPE_DRIVE_END_OF_DATA = -((2147418112)),
4404  TAPE_DRIVE_FILEMARKS = -((2147221504)),
4405  TAPE_DRIVE_LOAD_UNLOAD = -((2147483647)),
4406  TAPE_DRIVE_LOAD_UNLD_IMMED = -((2147483616)),
4407  TAPE_DRIVE_LOCK_UNLOCK = -((2147483644)),
4408  TAPE_DRIVE_LOCK_UNLK_IMMED = -((2147483520)),
4409  TAPE_DRIVE_LOG_BLK_IMMED = -((2147450880)),
4410  TAPE_DRIVE_LOGICAL_BLK = -((2147467264)),
4411  TAPE_DRIVE_RELATIVE_BLKS = -((2147352576)),
4412  TAPE_DRIVE_REVERSE_POSITION = -((2143289344)),
4413  TAPE_DRIVE_REWIND_IMMEDIATE = -((2147483640)),
4414  TAPE_DRIVE_SEQUENTIAL_FMKS = -((2146959360)),
4415  TAPE_DRIVE_SEQUENTIAL_SMKS = -((2145386496)),
4416  TAPE_DRIVE_SET_BLOCK_SIZE = -((2147483632)),
4417  TAPE_DRIVE_SET_COMPRESSION = -((2147483136)),
4418  TAPE_DRIVE_SET_ECC = -((2147483392)),
4419  TAPE_DRIVE_SET_PADDING = -((2147482624)),
4420  TAPE_DRIVE_SET_REPORT_SMKS = -((2147481600)),
4421  TAPE_DRIVE_SETMARKS = -((2146435072)),
4422  TAPE_DRIVE_SPACE_IMMEDIATE = -((2139095040)),
4423  TAPE_DRIVE_TENSION = -((2147483646)),
4424  TAPE_DRIVE_TENSION_IMMED = -((2147483584)),
4425  TAPE_DRIVE_WRITE_FILEMARKS = -((2113929216)),
4426  TAPE_DRIVE_WRITE_LONG_FMKS = -((2013265920)),
4427  TAPE_DRIVE_WRITE_MARK_IMMED = -((1879048192)),
4428  TAPE_DRIVE_WRITE_SETMARKS = -((2130706432)),
4429  TAPE_DRIVE_WRITE_SHORT_FMKS = -((2080374784)),
4430  STANDARD_RIGHTS_REQUIRED = (0xf0000),
4431  STANDARD_RIGHTS_WRITE = (0x20000),
4432  STANDARD_RIGHTS_READ = (0x20000),
4433  STANDARD_RIGHTS_EXECUTE = (0x20000),
4434  STANDARD_RIGHTS_ALL = (0x1f0000),
4435  SPECIFIC_RIGHTS_ALL = (0xffff),
4436  MAXIMUM_ALLOWED = (0x2000000),
4437  GENERIC_ALL = (0x10000000),
4438  SECURITY_NULL_RID = (0),
4439  SECURITY_WORLD_RID = (0),
4440  SECURITY_LOCAL_RID = (0),
4441  SECURITY_CREATOR_OWNER_RID = (0),
4442  SECURITY_CREATOR_GROUP_RID = (0x1),
4443  SECURITY_DIALUP_RID = (0x1),
4444  SECURITY_NETWORK_RID = (0x2),
4445  SECURITY_BATCH_RID = (0x3),
4446  SECURITY_INTERACTIVE_RID = (0x4),
4447  SECURITY_LOGON_IDS_RID = (0x5),
4448  SECURITY_LOGON_IDS_RID_COUNT = (0x3),
4449  SECURITY_SERVICE_RID = (0x6),
4450  SECURITY_LOCAL_SYSTEM_RID = (0x12),
4451  SECURITY_BUILTIN_DOMAIN_RID = (0x20),
4452  DOMAIN_USER_RID_ADMIN = (0x1f4),
4453  DOMAIN_USER_RID_GUEST = (0x1f5),
4454  DOMAIN_GROUP_RID_ADMINS = (0x200),
4455  DOMAIN_GROUP_RID_USERS = (0x201),
4456  DOMAIN_ALIAS_RID_ADMINS = (0x220),
4457  DOMAIN_ALIAS_RID_USERS = (0x221),
4458  DOMAIN_ALIAS_RID_GUESTS = (0x222),
4459  DOMAIN_ALIAS_RID_POWER_USERS = (0x223),
4460  DOMAIN_ALIAS_RID_ACCOUNT_OPS = (0x224),
4461  DOMAIN_ALIAS_RID_SYSTEM_OPS = (0x225),
4462  DOMAIN_ALIAS_RID_PRINT_OPS = (0x226),
4463  DOMAIN_ALIAS_RID_BACKUP_OPS = (0x227),
4464  DOMAIN_ALIAS_RID_REPLICATOR = (0x228),
4465  SE_GROUP_MANDATORY = (0x1),
4466  SE_GROUP_ENABLED_BY_DEFAULT = (0x2),
4467  SE_GROUP_ENABLED = (0x4),
4468  SE_GROUP_OWNER = (0x8),
4469  SE_GROUP_LOGON_ID = (0xc0000000),
4470  ACL_REVISION = (2),
4471  ACCESS_ALLOWED_ACE_TYPE = (0x0),
4472  ACCESS_DENIED_ACE_TYPE = (0x1),
4473  SYSTEM_AUDIT_ACE_TYPE = (0x2),
4474  SYSTEM_ALARM_ACE_TYPE = (0x3),
4475  OBJECT_INHERIT_ACE = (0x1),
4476  CONTAINER_INHERIT_ACE = (0x2),
4477  NO_PROPAGATE_INHERIT_ACE = (0x4),
4478  INHERIT_ONLY_ACE = (0x8),
4479  SUCCESSFUL_ACCESS_ACE_FLAG = (0x40),
4480  FAILED_ACCESS_ACE_FLAG = (0x80),
4481  SECURITY_DESCRIPTOR_MIN_LENGTH = (20),
4482  SE_OWNER_DEFAULTED = (1),
4483  SE_GROUP_DEFAULTED = (2),
4484  SE_DACL_PRESENT = (4),
4485  SE_DACL_DEFAULTED = (8),
4486  SE_SACL_PRESENT = (16),
4487  SE_SACL_DEFAULTED = (32),
4488  SE_SELF_RELATIVE = (32768),
4489  SE_PRIVILEGE_ENABLED_BY_DEFAULT = (0x1),
4490  SE_PRIVILEGE_ENABLED = (0x2),
4491  SE_PRIVILEGE_USED_FOR_ACCESS = (0x80000000),
4492  PRIVILEGE_SET_ALL_NECESSARY = (0x1),
4493  OFN_ALLOWMULTISELECT = (0x200),
4494  OFN_CREATEPROMPT = (0x2000),
4495  OFN_ENABLEHOOK = (0x20),
4496  OFN_ENABLETEMPLATE = (0x40),
4497  OFN_ENABLETEMPLATEHANDLE = (0x80),
4498  OFN_EXPLORER = (0x80000),
4499  OFN_EXTENSIONDIFFERENT = (0x400),
4500  OFN_FILEMUSTEXIST = (0x1000),
4501  OFN_HIDEREADONLY = (0x4),
4502  OFN_LONGNAMES = (0x200000),
4503  OFN_NOCHANGEDIR = (0x8),
4504  OFN_NODEREFERENCELINKS = (0x100000),
4505  OFN_NOLONGNAMES = (0x40000),
4506  OFN_NONETWORKBUTTON = (0x20000),
4507  OFN_NOREADONLYRETURN = (0x8000),
4508  OFN_NOTESTFILECREATE = (0x10000),
4509  OFN_NOVALIDATE = (0x100),
4510  OFN_OVERWRITEPROMPT = (0x2),
4511  OFN_PATHMUSTEXIST = (0x800),
4512  OFN_READONLY = (0x1),
4513  OFN_SHAREAWARE = (0x4000),
4514  OFN_SHOWHELP = (0x10),
4515  OFN_SHAREFALLTHROUGH = (0x2),
4516  OFN_SHARENOWARN = (0x1),
4517  OFN_SHAREWARN = (0),
4518  CDN_INITDONE = (0xfffffda7),
4519  CDN_SELCHANGE = (0xfffffda6),
4520  CDN_FOLDERCHANGE = (0xfffffda5),
4521  CDN_SHAREVIOLATION = (0xfffffda4),
4522  CDN_HELP = (0xfffffda3),
4523  CDN_FILEOK = (0xfffffda2),
4524  CDN_TYPECHANGE = (0xfffffda1),
4525  CDM_GETFILEPATH = (0x465),
4526  CDM_GETFOLDERIDLIST = (0x467),
4527  CDM_GETFOLDERPATH = (0x466),
4528  CDM_GETSPEC = (0x464),
4529  CDM_HIDECONTROL = (0x469),
4530  CDM_SETCONTROLTEXT = (0x468),
4531  CDM_SETDEFEXT = (0x46a),
4532  CC_ENABLEHOOK = (0x10),
4533  CC_ENABLETEMPLATE = (0x20),
4534  CC_ENABLETEMPLATEHANDLE = (0x40),
4535  CC_FULLOPEN = (0x2),
4536  CC_PREVENTFULLOPEN = (0x4),
4537  CC_RGBINIT = (0x1),
4538  CC_SHOWHELP = (0x8),
4539  CC_SOLIDCOLOR = (0x80),
4540  FR_DIALOGTERM = (0x40),
4541  FR_DOWN = (0x1),
4542  FR_ENABLEHOOK = (0x100),
4543  FR_ENABLETEMPLATE = (0x200),
4544  FR_ENABLETEMPLATEHANDLE = (0x2000),
4545  FR_FINDNEXT = (0x8),
4546  FR_HIDEUPDOWN = (0x4000),
4547  FR_HIDEMATCHCASE = (0x8000),
4548  FR_HIDEWHOLEWORD = (0x10000),
4549  FR_MATCHCASE = (0x4),
4550  FR_NOMATCHCASE = (0x800),
4551  FR_NOUPDOWN = (0x400),
4552  FR_NOWHOLEWORD = (0x1000),
4553  FR_REPLACE = (0x10),
4554  FR_REPLACEALL = (0x20),
4555  FR_SHOWHELP = (0x80),
4556  FR_WHOLEWORD = (0x2),
4557  CF_APPLY = (0x200),
4558  CF_ANSIONLY = (0x400),
4559  CF_BOTH = (0x3),
4560  CF_TTONLY = (0x40000),
4561  CF_EFFECTS = (0x100),
4562  CF_ENABLEHOOK = (0x8),
4563  CF_ENABLETEMPLATE = (0x10),
4564  CF_ENABLETEMPLATEHANDLE = (0x20),
4565  CF_FIXEDPITCHONLY = (0x4000),
4566  CF_FORCEFONTEXIST = (0x10000),
4567  CF_INITTOLOGFONTSTRUCT = (0x40),
4568  CF_LIMITSIZE = (0x2000),
4569  CF_NOOEMFONTS = (0x800),
4570  CF_NOFACESEL = (0x80000),
4571  CF_NOSCRIPTSEL = (0x800000),
4572  CF_NOSTYLESEL = (0x100000),
4573  CF_NOSIZESEL = (0x200000),
4574  CF_NOSIMULATIONS = (0x1000),
4575  CF_NOVECTORFONTS = (0x800),
4576  CF_NOVERTFONTS = (0x1000000),
4577  CF_PRINTERFONTS = (0x2),
4578  CF_SCALABLEONLY = (0x20000),
4579  CF_SCREENFONTS = (0x1),
4580  CF_SCRIPTSONLY = (0x400),
4581  CF_SELECTSCRIPT = (0x400000),
4582  CF_SHOWHELP = (0x4),
4583  CF_USESTYLE = (0x80),
4584  CF_WYSIWYG = (0x8000),
4585  BOLD_FONTTYPE = (0x100),
4586  ITALIC_FONTTYPE = (0x200),
4587  PRINTER_FONTTYPE = (0x4000),
4588  REGULAR_FONTTYPE = (0x400),
4589  SCREEN_FONTTYPE = (0x2000),
4590  SIMULATED_FONTTYPE = (0x8000),
4591 }
4592 
4593 const 
4594 {
4595 char* COLOROKSTRINGW = ("commdlg_ColorOK");
4596 char* FILEOKSTRINGW = ("commdlg_FileNameOK");
4597 char* FINDMSGSTRINGW = ("commdlg_FindReplace");
4598 char* HELPMSGSTRINGW = ("commdlg_help");
4599 char* LBSELCHSTRINGW = ("commdlg_LBSelChangedNotify");
4600 char* SETRGBSTRINGW = ("commdlg_SetRGBColor");
4601 char* SHAREVISTRINGW = ("commdlg_ShareViolation");
4602 char* COLOROKSTRINGA = ("commdlg_ColorOK");
4603 char* FILEOKSTRINGA = ("commdlg_FileNameOK");
4604 char* FINDMSGSTRINGA = ("commdlg_FindReplace");
4605 char* HELPMSGSTRINGA = ("commdlg_help");
4606 char* LBSELCHSTRINGA = ("commdlg_LBSelChangedNotify");
4607 char* SETRGBSTRINGA = ("commdlg_SetRGBColor");
4608 char* SHAREVISTRINGA = ("commdlg_ShareViolation");
4609 char* COLOROKSTRING = (COLOROKSTRINGA);
4610 char* FILEOKSTRING = (FILEOKSTRINGA);
4611 char* FINDMSGSTRING = (FINDMSGSTRINGA);
4612 char* HELPMSGSTRING = (HELPMSGSTRINGA);
4613 char* LBSELCHSTRING = (LBSELCHSTRINGA);
4614 char* SETRGBSTRING = (SETRGBSTRINGA);
4615 char* SHAREVISTRING = (SHAREVISTRINGA);
4616 }
4617 
4618 const 
4619 {
4620 HWND HWND_DESKTOP = cast(HWND) 0;
4621 HWND HWND_BOTTOM = cast(HWND) 1;
4622 HWND HWND_NOTOPMOST = cast(HWND) -2;
4623 HWND HWND_TOP = cast(HWND) 0;
4624 HWND HWND_TOPMOST = cast(HWND) -1;
4625 HWND HWND_BROADCAST = cast(HWND) 0xFFFF;
4626 }
4627 
4628 enum : DWORD 
4629 {
4630  CD_LBSELCHANGE = (0),
4631  CD_LBSELADD = (2),
4632  CD_LBSELSUB = (1),
4633  CD_LBSELNOITEMS = -((1)),
4634  DN_DEFAULTPRN = (1),
4635  PD_ALLPAGES = (0),
4636  PD_COLLATE = (16),
4637  PD_DISABLEPRINTTOFILE = (524288),
4638  PD_ENABLEPRINTHOOK = (4096),
4639  PD_ENABLEPRINTTEMPLATE = (16384),
4640  PD_ENABLEPRINTTEMPLATEHANDLE = (65536),
4641  PD_ENABLESETUPHOOK = (8192),
4642  PD_ENABLESETUPTEMPLATE = (32768),
4643  PD_ENABLESETUPTEMPLATEHANDLE = (131072),
4644  PD_HIDEPRINTTOFILE = (1048576),
4645  PD_NOPAGENUMS = (8),
4646  PD_NOSELECTION = (4),
4647  PD_NOWARNING = (128),
4648  PD_PAGENUMS = (2),
4649  PD_PRINTSETUP = (64),
4650  PD_PRINTTOFILE = (32),
4651  PD_RETURNDC = (256),
4652  PD_RETURNDEFAULT = (1024),
4653  PD_RETURNIC = (512),
4654  PD_SELECTION = (1),
4655  PD_SHOWHELP = (2048),
4656  PD_USEDEVMODECOPIES = (262144),
4657  PD_USEDEVMODECOPIESANDCOLLATE = (262144),
4658  PSD_DEFAULTMINMARGINS = (0),
4659  PSD_DISABLEMARGINS = (16),
4660  PSD_DISABLEORIENTATION = (256),
4661  PSD_DISABLEPAGEPAINTING = (524288),
4662  PSD_DISABLEPAPER = (512),
4663  PSD_DISABLEPRINTER = (32),
4664  PSD_ENABLEPAGEPAINTHOOK = (262144),
4665  PSD_ENABLEPAGESETUPHOOK = (8192),
4666  PSD_ENABLEPAGESETUPTEMPLATE = (32768),
4667  PSD_ENABLEPAGESETUPTEMPLATEHANDLE = (131072),
4668  PSD_INHUNDREDTHSOFMILLIMETERS = (8),
4669  PSD_INTHOUSANDTHSOFINCHES = (4),
4670  PSD_INWININIINTLMEASURE = (0),
4671  PSD_MARGINS = (2),
4672  PSD_MINMARGINS = (1),
4673  PSD_NOWARNING = (128),
4674  PSD_RETURNDEFAULT = (1024),
4675  PSD_SHOWHELP = (2048),
4676  SW_OTHERUNZOOM = (4),
4677  SW_OTHERZOOM = (2),
4678  SW_PARENTCLOSING = (1),
4679  SW_PARENTOPENING = (3),
4680  VK_LBUTTON = (1),
4681  VK_RBUTTON = (2),
4682  VK_CANCEL = (3),
4683  VK_MBUTTON = (4),
4684  VK_BACK = (8),
4685  VK_TAB = (9),
4686  VK_CLEAR = (12),
4687  VK_RETURN = (13),
4688  VK_SHIFT = (16),
4689  VK_CONTROL = (17),
4690  VK_MENU = (18),
4691  VK_PAUSE = (19),
4692  VK_CAPITAL = (20),
4693  VK_ESCAPE = (27),
4694  VK_SPACE = (32),
4695  VK_PRIOR = (33),
4696  VK_NEXT = (34),
4697  VK_END = (35),
4698  VK_HOME = (36),
4699  VK_LEFT = (37),
4700  VK_UP = (38),
4701  VK_RIGHT = (39),
4702  VK_DOWN = (40),
4703  VK_SELECT = (41),
4704  VK_PRINT = (42),
4705  VK_EXECUTE = (43),
4706  VK_SNAPSHOT = (44),
4707  VK_INSERT = (45),
4708  VK_DELETE = (46),
4709  VK_HELP = (47),
4710  VK_0 = (48),
4711  VK_1 = (49),
4712  VK_2 = (50),
4713  VK_3 = (51),
4714  VK_4 = (52),
4715  VK_5 = (53),
4716  VK_6 = (54),
4717  VK_7 = (55),
4718  VK_8 = (56),
4719  VK_9 = (57),
4720  VK_A = (65),
4721  VK_B = (66),
4722  VK_C = (67),
4723  VK_D = (68),
4724  VK_E = (69),
4725  VK_F = (70),
4726  VK_G = (71),
4727  VK_H = (72),
4728  VK_I = (73),
4729  VK_J = (74),
4730  VK_K = (75),
4731  VK_L = (76),
4732  VK_M = (77),
4733  VK_N = (78),
4734  VK_O = (79),
4735  VK_P = (80),
4736  VK_Q = (81),
4737  VK_R = (82),
4738  VK_S = (83),
4739  VK_T = (84),
4740  VK_U = (85),
4741  VK_V = (86),
4742  VK_W = (87),
4743  VK_X = (88),
4744  VK_Y = (89),
4745  VK_Z = (90),
4746  VK_NUMPAD0 = (96),
4747  VK_NUMPAD1 = (97),
4748  VK_NUMPAD2 = (98),
4749  VK_NUMPAD3 = (99),
4750  VK_NUMPAD4 = (100),
4751  VK_NUMPAD5 = (101),
4752  VK_NUMPAD6 = (102),
4753  VK_NUMPAD7 = (103),
4754  VK_NUMPAD8 = (104),
4755  VK_NUMPAD9 = (105),
4756  VK_MULTIPLY = (106),
4757  VK_ADD = (107),
4758  VK_SEPARATOR = (108),
4759  VK_SUBTRACT = (109),
4760  VK_DECIMAL = (110),
4761  VK_DIVIDE = (111),
4762  VK_F1 = (112),
4763  VK_F2 = (113),
4764  VK_F3 = (114),
4765  VK_F4 = (115),
4766  VK_F5 = (116),
4767  VK_F6 = (117),
4768  VK_F7 = (118),
4769  VK_F8 = (119),
4770  VK_F9 = (120),
4771  VK_F10 = (121),
4772  VK_F11 = (122),
4773  VK_F12 = (123),
4774  VK_F13 = (124),
4775  VK_F14 = (125),
4776  VK_F15 = (126),
4777  VK_F16 = (127),
4778  VK_F17 = (128),
4779  VK_F18 = (129),
4780  VK_F19 = (130),
4781  VK_F20 = (131),
4782  VK_F21 = (132),
4783  VK_F22 = (133),
4784  VK_F23 = (134),
4785  VK_F24 = (135),
4786  VK_NUMLOCK = (144),
4787  VK_SCROLL = (145),
4788  VK_LSHIFT = (160),
4789  VK_LCONTROL = (162),
4790  VK_LMENU = (164),
4791  VK_RSHIFT = (161),
4792  VK_RCONTROL = (163),
4793  VK_RMENU = (165),
4794  VK_PROCESSKEY = (229),
4795  KF_ALTDOWN = (8192),
4796  KF_DLGMODE = (2048),
4797  KF_EXTENDED = (256),
4798  KF_MENUMODE = (4096),
4799  KF_REPEAT = (16384),
4800  KF_UP = (32768),
4801  KL_NAMELENGTH = (9),
4802  WA_ACTIVE = (1),
4803  WA_CLICKACTIVE = (2),
4804  WA_INACTIVE = (0),
4805  PWR_CRITICALRESUME = (3),
4806  PWR_SUSPENDREQUEST = (1),
4807  PWR_SUSPENDRESUME = (2),
4808  PWR_FAIL = -((1)),
4809  PWR_OK = (1),
4810  NF_QUERY = (3),
4811  NF_REQUERY = (4),
4812  NFR_ANSI = (1),
4813  NFR_UNICODE = (2),
4814  WMSZ_BOTTOM = (6),
4815  WMSZ_BOTTOMLEFT = (7),
4816  WMSZ_BOTTOMRIGHT = (8),
4817  WMSZ_LEFT = (1),
4818  WMSZ_RIGHT = (2),
4819  WMSZ_TOP = (3),
4820  WMSZ_TOPLEFT = (4),
4821  WMSZ_TOPRIGHT = (5),
4822  MA_ACTIVATE = (1),
4823  MA_ACTIVATEANDEAT = (2),
4824  MA_NOACTIVATE = (3),
4825  MA_NOACTIVATEANDEAT = (4),
4826  SIZE_MAXHIDE = (4),
4827  SIZE_MAXIMIZED = (2),
4828  SIZE_MAXSHOW = (3),
4829  SIZE_MINIMIZED = (1),
4830  SIZE_RESTORED = (0),
4831  WVR_ALIGNTOP = (16),
4832  WVR_ALIGNLEFT = (32),
4833  WVR_ALIGNBOTTOM = (64),
4834  WVR_ALIGNRIGHT = (128),
4835  WVR_HREDRAW = (256),
4836  WVR_VREDRAW = (512),
4837  WVR_REDRAW = (768),
4838  WVR_VALIDRECTS = (1024),
4839  HTBOTTOM = (15),
4840  HTBOTTOMLEFT = (16),
4841  HTBOTTOMRIGHT = (17),
4842  HTCAPTION = (2),
4843  HTCLIENT = (1),
4844  HTERROR = -((2)),
4845  HTGROWBOX = (4),
4846  HTHSCROLL = (6),
4847  HTLEFT = (10),
4848  HTMENU = (5),
4849  HTNOWHERE = (0),
4850  HTREDUCE = (8),
4851  HTRIGHT = (11),
4852  HTSIZE = (4),
4853  HTSYSMENU = (3),
4854  HTTOP = (12),
4855  HTTOPLEFT = (13),
4856  HTTOPRIGHT = (14),
4857  HTTRANSPARENT = -((1)),
4858  HTVSCROLL = (7),
4859  HTZOOM = (9),
4860  MK_CONTROL = (8),
4861  MK_LBUTTON = (1),
4862  MK_MBUTTON = (16),
4863  MK_RBUTTON = (2),
4864  MK_SHIFT = (4),
4865  CS_BYTEALIGNCLIENT = (4096),
4866  CS_BYTEALIGNWINDOW = (8192),
4867  CS_CLASSDC = (64),
4868  CS_DBLCLKS = (8),
4869  CS_GLOBALCLASS = (16384),
4870  CS_HREDRAW = (2),
4871  CS_KEYCVTWINDOW = (4),
4872  CS_NOCLOSE = (512),
4873  CS_NOKEYCVT = (256),
4874  CS_OWNDC = (32),
4875  CS_PARENTDC = (128),
4876  CS_SAVEBITS = (2048),
4877  CS_VREDRAW = (1),
4878  DLGWINDOWEXTRA = (30),
4879  FALT = (16),
4880  FCONTROL = (8),
4881  FNOINVERT = (2),
4882  FSHIFT = (4),
4883  FVIRTKEY = (1),
4884  MIIM_CHECKMARKS = (8),
4885  MIIM_DATA = (32),
4886  MIIM_ID = (2),
4887  MIIM_STATE = (1),
4888  MIIM_SUBMENU = (4),
4889  MIIM_TYPE = (16),
4890  MFT_BITMAP = (0x4),
4891  MFT_MENUBARBREAK = (0x20),
4892  MFT_MENUBREAK = (0x40),
4893  MFT_OWNERDRAW = (0x100),
4894  MFT_RADIOCHECK = (0x200),
4895  MFT_RIGHTJUSTIFY = (0x4000),
4896  MFT_SEPARATOR = (0x800),
4897  MFT_STRING = (0),
4898  MFS_CHECKED = (0x8),
4899  MFS_DEFAULT = (0x1000),
4900  MFS_DISABLED = (0x3),
4901  MFS_ENABLED = (0),
4902  MFS_GRAYED = (0x3),
4903  MFS_HILITE = (0x80),
4904  MFS_UNCHECKED = (0),
4905  MFS_UNHILITE = (0),
4906  SERKF_AVAILABLE = (2),
4907  SERKF_INDICATOR = (4),
4908  SERKF_SERIALKEYSON = (1),
4909  FKF_AVAILABLE = (2),
4910  FKF_CLICKON = (64),
4911  FKF_FILTERKEYSON = (1),
4912  FKF_HOTKEYACTIVE = (4),
4913  FKF_HOTKEYSOUND = (16),
4914  FKF_CONFIRMHOTKEY = (8),
4915  FKF_INDICATOR = (32),
4916  HELPINFO_MENUITEM = (2),
4917  HELPINFO_WINDOW = (1),
4918  PRF_CHECKVISIBLE = (0x1),
4919  PRF_CHILDREN = (0x10),
4920  PRF_CLIENT = (0x4),
4921  PRF_ERASEBKGND = (0x8),
4922  PRF_NONCLIENT = (0x2),
4923  PRF_OWNED = (0x20),
4924  SC_CLOSE = (61536),
4925  SC___FILE__HELP = (61824),
4926  SC_DEFAULT = (61792),
4927  SC_HOTKEY = (61776),
4928  SC_HSCROLL = (61568),
4929  SC_KEYMENU = (61696),
4930  SC_MAXIMIZE = (61488),
4931  SC_ZOOM = (61488),
4932  SC_MINIMIZE = (61472),
4933  SC_ICON = (61472),
4934  SC_MONITORPOWER = (61808),
4935  SC_MOUSEMENU = (61584),
4936  SC_MOVE = (61456),
4937  SC_NEXTWINDOW = (61504),
4938  SC_PREVWINDOW = (61520),
4939  SC_RESTORE = (61728),
4940  SC_SCREENSAVE = (61760),
4941  SC_SIZE = (61440),
4942  SC_TASKLIST = (61744),
4943  SC_VSCROLL = (61552),
4944  DC_HASDEFID = (21323),
4945  DLGC_BUTTON = (8192),
4946  DLGC_DEFPUSHBUTTON = (16),
4947  DLGC_HASSETSEL = (8),
4948  DLGC_RADIOBUTTON = (64),
4949  DLGC_STATIC = (256),
4950  DLGC_UNDEFPUSHBUTTON = (32),
4951  DLGC_WANTALLKEYS = (4),
4952  DLGC_WANTARROWS = (1),
4953  DLGC_WANTCHARS = (128),
4954  DLGC_WANTMESSAGE = (4),
4955  DLGC_WANTTAB = (2),
4956  EC_LEFTMARGIN = (1),
4957  EC_RIGHTMARGIN = (2),
4958  EC_USEFONTINFO = (65535),
4959  LB_ERR = -((1)),
4960  LB_ERRSPACE = -((2)),
4961  LB_OKAY = (0),
4962  CB_ERR = -((1)),
4963  CB_ERRSPACE = -((2)),
4964  IMC_GETCANDIDATEPOS = (7),
4965  IMC_GETCOMPOSITIONFONT = (9),
4966  IMC_GETCOMPOSITIONWINDOW = (11),
4967  IMC_GETSTATUSWINDOWPOS = (15),
4968  IMC_CLOSESTATUSWINDOW = (33),
4969  IMC_OPENSTATUSWINDOW = (34),
4970  IMC_SETCANDIDATEPOS = (8),
4971  IMC_SETCOMPOSITIONFONT = (10),
4972  IMC_SETCOMPOSITIONWINDOW = (12),
4973  IMC_SETSTATUSWINDOWPOS = (16),
4974  IMN_CHANGECANDIDATE = (3),
4975  IMN_CLOSECANDIDATE = (4),
4976  IMN_CLOSESTATUSWINDOW = (1),
4977  IMN_GUIDELINE = (13),
4978  IMN_OPENCANDIDATE = (5),
4979  IMN_OPENSTATUSWINDOW = (2),
4980  IMN_SETCANDIDATEPOS = (9),
4981  IMN_SETCOMPOSITIONFONT = (10),
4982  IMN_SETCOMPOSITIONWINDOW = (11),
4983  IMN_SETCONVERSIONMODE = (6),
4984  IMN_SETOPENSTATUS = (8),
4985  IMN_SETSENTENCEMODE = (7),
4986  IMN_SETSTATUSWINDOWPOS = (12),
4987  IMN_PRIVATE = (14),
4988  SKF_AUDIBLEFEEDBACK = (64),
4989  SKF_AVAILABLE = (2),
4990  SKF_CONFIRMHOTKEY = (8),
4991  SKF_HOTKEYACTIVE = (4),
4992  SKF_HOTKEYSOUND = (16),
4993  SKF_INDICATOR = (32),
4994  SKF_STICKYKEYSON = (1),
4995  SKF_TRISTATE = (128),
4996  SKF_TWOKEYSOFF = (256),
4997  MKF_AVAILABLE = (2),
4998  MKF_CONFIRMHOTKEY = (8),
4999  MKF_HOTKEYACTIVE = (4),
5000  MKF_HOTKEYSOUND = (16),
5001  MKF_INDICATOR = (32),
5002  MKF_MOUSEKEYSON = (1),
5003  MKF_MODIFIERS = (64),
5004  MKF_REPLACENUMBERS = (128),
5005  SSF_AVAILABLE = (2),
5006  SSF_SOUNDSENTRYON = (1),
5007  SSTF_BORDER = (2),
5008  SSTF_CHARS = (1),
5009  SSTF_DISPLAY = (3),
5010  SSTF_NONE = (0),
5011  SSGF_DISPLAY = (3),
5012  SSGF_NONE = (0),
5013  SSWF_CUSTOM = (4),
5014  SSWF_DISPLAY = (3),
5015  SSWF_NONE = (0),
5016  SSWF_TITLE = (1),
5017  SSWF_WINDOW = (2),
5018  ATF_ONOFFFEEDBACK = (2),
5019  ATF_TIMEOUTON = (1),
5020  HCF_AVAILABLE = (2),
5021  HCF_CONFIRMHOTKEY = (8),
5022  HCF_HIGHCONTRASTON = (1),
5023  HCF_HOTKEYACTIVE = (4),
5024  HCF_HOTKEYAVAILABLE = (64),
5025  HCF_HOTKEYSOUND = (16),
5026  HCF_INDICATOR = (32),
5027  TKF_AVAILABLE = (2),
5028  TKF_CONFIRMHOTKEY = (8),
5029  TKF_HOTKEYACTIVE = (4),
5030  TKF_HOTKEYSOUND = (16),
5031  TKF_TOGGLEKEYSON = (1),
5032  PP_DISPLAYERRORS = (1),
5033  RESOURCEDISPLAYTYPE_DOMAIN = (1),
5034  RESOURCEDISPLAYTYPE_FILE = (4),
5035  RESOURCEDISPLAYTYPE_GENERIC = (0),
5036  RESOURCEDISPLAYTYPE_GROUP = (5),
5037  RESOURCEDISPLAYTYPE_SERVER = (2),
5038  RESOURCEDISPLAYTYPE_SHARE = (3),
5039  CAPSLOCK_ON = (128),
5040  ENHANCED_KEY = (256),
5041  LEFT_ALT_PRESSED = (2),
5042  LEFT_CTRL_PRESSED = (8),
5043  NUMLOCK_ON = (32),
5044  RIGHT_ALT_PRESSED = (1),
5045  RIGHT_CTRL_PRESSED = (4),
5046  SCROLLLOCK_ON = (64),
5047  SHIFT_PRESSED = (16),
5048  FROM_LEFT_1ST_BUTTON_PRESSED = (1),
5049  RIGHTMOST_BUTTON_PRESSED = (2),
5050  FROM_LEFT_2ND_BUTTON_PRESSED = (4),
5051  FROM_LEFT_3RD_BUTTON_PRESSED = (8),
5052  FROM_LEFT_4TH_BUTTON_PRESSED = (16),
5053  DOUBLE_CLICK = (2),
5054  MOUSE_MOVED = (1),
5055  KEY_EVENT = (1),
5056  _MOUSE_EVENT = (2),
5057  cMOUSE_EVENT = (2),
5058  WINDOW_BUFFER_SIZE_EVENT = (4),
5059  MENU_EVENT = (8),
5060  FOCUS_EVENT = (16),
5061  BI_RGB = (0),
5062  BI_RLE8 = (1),
5063  BI_RLE4 = (2),
5064  BI_BITFIELDS = (3),
5065  PFD_DRAW_TO_WINDOW = (0x4),
5066  PFD_DRAW_TO_BITMAP = (0x8),
5067  PFD_SUPPORT_GDI = (0x10),
5068  PFD_SUPPORT_OPENGL = (0x20),
5069  PFD_DOUBLEBUFFER = (0x1),
5070  PFD_STEREO = (0x2),
5071  PFD_DOUBLEBUFFER_DONTCARE = (0x40000000),
5072  PFD_STEREO_DONTCARE = (0x80000000),
5073  PFD_TYPE_RGBA = (0),
5074  PFD_TYPE_COLORINDEX = (1),
5075  PFD_MAIN_PLANE = (0),
5076  PFD_OVERLAY_PLANE = (1),
5077  PFD_UNDERLAY_PLANE = -((1)),
5078  WGL_FONT_LINES = (0),
5079  WGL_FONT_POLYGONS = (1),
5080  PFD_GENERIC_FORMAT = (0x40),
5081  PFD_NEED_PALETTE = (0x80),
5082  PFD_NEED_SYSTEM_PALETTE = (0x100),
5083  PFD_SWAP_COPY = (0x400),
5084  PFD_SWAP_EXCHANGE = (0x200),
5085  TMPF_FIXED_PITCH = (0x1),
5086  TMPF_VECTOR = (0x2),
5087  TMPF_TRUETYPE = (0x4),
5088  TMPF_DEVICE = (0x8),
5089  SE_ERR_SHARE = (26),
5090  SE_ERR_ASSOCINCOMPLETE = (27),
5091  SE_ERR_DDETIMEOUT = (28),
5092  SE_ERR_DDEFAIL = (29),
5093  SE_ERR_DDEBUSY = (30),
5094  SE_ERR_NOASSOC = (31),
5095  XCLASS_BOOL = (0x1000),
5096  XCLASS_DATA = (0x2000),
5097  XCLASS_FLAGS = (0x4000),
5098  XCLASS_MASK = (0xfc00),
5099  XCLASS_NOTIFICATION = (0x8000),
5100  XTYPF_NOBLOCK = (0x0002),
5101  XTYP_ADVDATA = (0x4010),
5102  XTYP_ADVREQ = (0x2022),
5103  XTYP_ADVSTART = (0x1030),
5104  XTYP_ADVSTOP = (0x8040),
5105  XTYP_CONNECT = (0x1062),
5106  XTYP_CONNECT_CONFIRM = (0x8072),
5107  XTYP_DISCONNECT = (0x80c2),
5108  XTYP_EXECUTE = (0x4050),
5109  XTYP_POKE = (0x4090),
5110  XTYP_REQUEST = (0x20b0),
5111  XTYP_WILDCONNECT = (0x20E2),
5112  XTYP_REGISTER = (0x80A2),
5113  XTYP_ERROR = (0x8002),
5114  XTYP_XACT_COMPLETE = (0x8080),
5115  XTYP_UNREGISTER = (0x80D2),
5116  DMLERR_DLL_USAGE = (0x4004),
5117  DMLERR_INVALIDPARAMETER = (0x4006),
5118  DMLERR_NOTPROCESSED = (0x4009),
5119  DMLERR_POSTMSG_FAILED = (0x400c),
5120  DMLERR_SERVER_DIED = (0x400e),
5121  DMLERR_SYS_ERROR = (0x400f),
5122  DMLERR_BUSY = (0x4001),
5123  DMLERR_DATAACKTIMEOUT = (0x4002),
5124  DMLERR_ADVACKTIMEOUT = (0x4000),
5125  DMLERR_DLL_NOT_INITIALIZED = (0x4003),
5126  DMLERR_LOW_MEMORY = (0x4007),
5127  DMLERR_MEMORY_ERROR = (0x4008),
5128  DMLERR_POKEACKTIMEOUT = (0x400b),
5129  DMLERR_NO_CONV_ESTABLISHED = (0x400a),
5130  DMLERR_REENTRANCY = (0x400d),
5131  DMLERR_UNFOUND_QUEUE_ID = (0x4011),
5132  DMLERR_UNADVACKTIMEOUT = (0x4010),
5133  DMLERR_EXECACKTIMEOUT = (0x4005),
5134  DDE_FACK = (0x8000),
5135  DDE_FNOTPROCESSED = (0x0000),
5136  DNS_REGISTER = (0x0001),
5137  DNS_UNREGISTER = (0x0002),
5138  CP_WINANSI = (1004),
5139  CP_WINUNICODE = (1200),
5140  APPCLASS_STANDARD = (0x00000000),
5141  BKMODE_LAST = (2),
5142  CTLCOLOR_MSGBOX = (0),
5143  CTLCOLOR_EDIT = (1),
5144  CTLCOLOR_LISTBOX = (2),
5145  CTLCOLOR_BTN = (3),
5146  CTLCOLOR_DLG = (4),
5147  CTLCOLOR_SCROLLBAR = (5),
5148  CTLCOLOR_STATIC = (6),
5149  CTLCOLOR_MAX = (7),
5150  META_SETMAPMODE = (0x0103),
5151  META_SETWINDOWORG = (0x020B),
5152  META_SETWINDOWEXT = (0x020C),
5153  POLYFILL_LAST = (2),
5154  STATUS_WAIT_0 = (0x00000000),
5155  STATUS_ABANDONED_WAIT_0 = (0x00000080),
5156  STATUS_USER_APC = (0x000000C0),
5157  STATUS_TIMEOUT = (0x00000102),
5158  STATUS_PENDING = (0x00000103),
5159  STATUS_GUARD_PAGE_VIOLATION = (0x80000001),
5160  STATUS_DATATYPE_MISALIGNMENT = (0x80000002),
5161  STATUS_BREAKPOINT = (0x80000003),
5162  STATUS_SINGLE_STEP = (0x80000004),
5163  STATUS_IN_PAGE_ERROR = (0xC0000006),
5164  STATUS_INVALID_HANDLE = (0xC0000008),
5165  STATUS_ILLEGAL_INSTRUCTION = (0xC000001D),
5166  STATUS_NONCONTINUABLE_EXCEPTION = (0xC0000025),
5167  STATUS_INVALID_DISPOSITION = (0xC0000026),
5168  STATUS_ARRAY_BOUNDS_EXCEEDED = (0xC000008C),
5169  STATUS_FLOAT_DENORMAL_OPERAND = (0xC000008D),
5170  STATUS_FLOAT_DIVIDE_BY_ZERO = (0xC000008E),
5171  STATUS_FLOAT_INEXACT_RESULT = (0xC000008F),
5172  STATUS_FLOAT_INVALID_OPERATION = (0xC0000090),
5173  STATUS_FLOAT_OVERFLOW = (0xC0000091),
5174  STATUS_FLOAT_STACK_CHECK = (0xC0000092),
5175  STATUS_FLOAT_UNDERFLOW = (0xC0000093),
5176  STATUS_INTEGER_DIVIDE_BY_ZERO = (0xC0000094),
5177  STATUS_INTEGER_OVERFLOW = (0xC0000095),
5178  STATUS_PRIVILEGED_INSTRUCTION = (0xC0000096),
5179  STATUS_STACK_OVERFLOW = (0xC00000FD),
5180  STATUS_CONTROL_C_EXIT = (0xC000013A),
5181  PROCESSOR_ARCHITECTURE_INTEL = (0),
5182  PROCESSOR_ARCHITECTURE_MIPS = (1),
5183  PROCESSOR_ARCHITECTURE_ALPHA = (2),
5184  PROCESSOR_ARCHITECTURE_PPC = (3),
5185  SIZEFULLSCREEN = (SIZE_MAXIMIZED),
5186  SIZENORMAL = (SIZE_RESTORED),
5187  SIZEICONIC = (SIZE_MINIMIZED),
5188  SIZE_OF_80387_REGISTERS = (80),
5189  __FILE___i386 = (0x10000),
5190  __FILE___CONTROL = (__FILE___i386) | (1),
5191  __FILE___INTEGER = (__FILE___i386) | (2),
5192  __FILE___SEGMENTS = (__FILE___i386) | (4),
5193  __FILE___FLOATING_POINT = (__FILE___i386) | (8),
5194  __FILE___DEBUG_REGISTERS = (__FILE___i386) | (0x10),
5195  __FILE___FULL = ((__FILE___CONTROL) | (__FILE___INTEGER)) | (__FILE___SEGMENTS),
5196  FLAG_TRACE_BIT = (0x100),
5197  __FILE___DEBUGGER = (__FILE___FULL) | (__FILE___FLOATING_POINT),
5198  FILTER_TEMP_DUPLICATE_ACCOUNT = (0x0001),
5199  FILTER_NORMAL_ACCOUNT = (0x0002),
5200  FILTER_INTERDOMAIN_TRUST_ACCOUNT = (0x0008),
5201  FILTER_WORKSTATION_TRUST_ACCOUNT = (0x0010),
5202  FILTER_SERVER_TRUST_ACCOUNT = (0x0020),
5203  LOGON32_LOGON_INTERACTIVE = (0x02),
5204  LOGON32_LOGON_BATCH = (0x04),
5205  LOGON32_LOGON_SERVICE = (0x05),
5206  LOGON32_PROVIDER_DEFAULT = (0x00),
5207  LOGON32_PROVIDER_WINNT35 = (0x01),
5208  QID_SYNC = (0xFFFFFFFF),
5209  IMAGE_DOS_SIGNATURE = (0x5a4d),
5210  IMAGE_NT_SIGNATURE = (0x4550),
5211  SEVERITY_SUCCESS = (0),
5212  SEVERITY_ERROR = (1),
5213  VT_EMPTY = (0),
5214  VT_NULL = (1),
5215  VT_I2 = (2),
5216  VT_I4 = (3),
5217  VT_R4 = (4),
5218  VT_R8 = (5),
5219  VT_BSTR = (8),
5220  VT_ERROR = (10),
5221  VT_BOOL = (11),
5222  VT_UI1 = (17),
5223  VT_BYREF = (0x4000),
5224  VT_RESERVED = (0x8000),
5225  FACILITY_WINDOWS = (8),
5226  FACILITY_STORAGE = (3),
5227  FACILITY_RPC = (1),
5228  FACILITY_SSPI = (9),
5229  FACILITY_WIN32 = (7),
5230  FACILITY_CONTROL = (10),
5231  FACILITY_NULL = (0),
5232  FACILITY_INTERNET = (12),
5233  FACILITY_ITF = (4),
5234  FACILITY_DISPATCH = (2),
5235  FACILITY_CERT = (11),
5236  ACM_OPENW = (1127),
5237  ACM_OPENA = (1124),
5238  ACM_OPEN = (ACM_OPENA),
5239  ACM_PLAY = (1125),
5240  ACM_STOP = (1126),
5241  ACN_START = (1),
5242  ACN_STOP = (2),
5243  BM_CLICK = (245),
5244  BM_GETCHECK = (240),
5245  BM_GETIMAGE = (246),
5246  BM_GETSTATE = (242),
5247  BM_SETCHECK = (241),
5248  BM_SETIMAGE = (247),
5249  BM_SETSTATE = (243),
5250  BM_SETSTYLE = (244),
5251  BN_CLICKED = (0),
5252  BN_DBLCLK = (5),
5253  BN_DISABLE = (4),
5254  BN_DOUBLECLICKED = (5),
5255  BN_HILITE = (2),
5256  BN_KILLFOCUS = (7),
5257  BN_PAINT = (1),
5258  BN_PUSHED = (2),
5259  BN_SETFOCUS = (6),
5260  BN_UNHILITE = (3),
5261  BN_UNPUSHED = (3),
5262  CB_ADDSTRING = (323),
5263  CB_DELETESTRING = (324),
5264  CB_DIR = (325),
5265  CB_FINDSTRING = (332),
5266  CB_FINDSTRINGEXACT = (344),
5267  CB_GETCOUNT = (326),
5268  CB_GETCURSEL = (327),
5269  CB_GETDROPPEDCONTROLRECT = (338),
5270  CB_GETDROPPEDSTATE = (343),
5271  CB_GETDROPPEDWIDTH = (351),
5272  CB_GETEDITSEL = (320),
5273  CB_GETEXTENDEDUI = (342),
5274  CB_GETHORIZONTALEXTENT = (349),
5275  CB_GETITEMDATA = (336),
5276  CB_GETITEMHEIGHT = (340),
5277  CB_GETLBTEXT = (328),
5278  CB_GETLBTEXTLEN = (329),
5279  CB_GETLOCALE = (346),
5280  CB_GETTOPINDEX = (347),
5281  CB_INITSTORAGE = (353),
5282  CB_INSERTSTRING = (330),
5283  CB_LIMITTEXT = (321),
5284  CB_RESETCONTENT = (331),
5285  CB_SELECTSTRING = (333),
5286  CB_SETCURSEL = (334),
5287  CB_SETDROPPEDWIDTH = (352),
5288  CB_SETEDITSEL = (322),
5289  CB_SETEXTENDEDUI = (341),
5290  CB_SETHORIZONTALEXTENT = (350),
5291  CB_SETITEMDATA = (337),
5292  CB_SETITEMHEIGHT = (339),
5293  CB_SETLOCALE = (345),
5294  CB_SETTOPINDEX = (348),
5295  CB_SHOWDROPDOWN = (335),
5296  CBN_CLOSEUP = (8),
5297  CBN_DBLCLK = (2),
5298  CBN_DROPDOWN = (7),
5299  CBN_EDITCHANGE = (5),
5300  CBN_EDITUPDATE = (6),
5301  CBN_ERRSPACE = -((1)),
5302  CBN_KILLFOCUS = (4),
5303  CBN_SELCHANGE = (1),
5304  CBN_SELENDCANCEL = (10),
5305  CBN_SELENDOK = (9),
5306  CBN_SETFOCUS = (3),
5307  DL_BEGINDRAG = (1157),
5308  DL_CANCELDRAG = (1160),
5309  DL_DRAGGING = (1158),
5310  DL_DROPPED = (1159),
5311  DM_GETDEFID = (1024),
5312  DM_REPOSITION = (1026),
5313  DM_SETDEFID = (1025),
5314  EM_CANPASTE = (1074),
5315  EM_CANUNDO = (198),
5316  EM_CHARFROMPOS = (215),
5317  EM_DISPLAYBAND = (1075),
5318  EM_EMPTYUNDOBUFFER = (205),
5319  EM_EXGETSEL = (1076),
5320  EM_EXLIMITTEXT = (1077),
5321  EM_EXLINEFROMCHAR = (1078),
5322  EM_EXSETSEL = (1079),
5323  EM_FINDTEXT = (1080),
5324  EM_FINDTEXTEX = (1103),
5325  EM_FINDWORDBREAK = (1100),
5326  EM_FMTLINES = (200),
5327  EM_FORMATRANGE = (1081),
5328  EM_GETCHARFORMAT = (1082),
5329  EM_GETEVENTMASK = (1083),
5330  EM_GETFIRSTVISIBLELINE = (206),
5331  EM_GETHANDLE = (189),
5332  EM_GETLIMITTEXT = (213),
5333  EM_GETLINE = (196),
5334  EM_GETLINECOUNT = (186),
5335  EM_GETMARGINS = (212),
5336  EM_GETMODIFY = (184),
5337  EM_GETIMECOLOR = (1129),
5338  EM_GETIMEOPTIONS = (1131),
5339  EM_GETOPTIONS = (1102),
5340  EM_GETOLEINTERFACE = (1084),
5341  EM_GETPARAFORMAT = (1085),
5342  EM_GETPASSWORDCHAR = (210),
5343  EM_GETPUNCTUATION = (1125),
5344  EM_GETRECT = (178),
5345  EM_GETSEL = (176),
5346  EM_GETSELTEXT = (1086),
5347  EM_GETTEXTRANGE = (1099),
5348  EM_GETTHUMB = (190),
5349  EM_GETWORDBREAKPROC = (209),
5350  EM_GETWORDBREAKPROCEX = (1104),
5351  EM_GETWORDWRAPMODE = (1127),
5352  EM_HIDESELECTION = (1087),
5353  EM_LIMITTEXT = (197),
5354  EM_LINEFROMCHAR = (201),
5355  EM_LINEINDEX = (187),
5356  EM_LINELENGTH = (193),
5357  EM_LINESCROLL = (182),
5358  EM_PASTESPECIAL = (1088),
5359  EM_POSFROMCHAR = (214),
5360  EM_REPLACESEL = (194),
5361  EM_REQUESTRESIZE = (1089),
5362  EM_SCROLL = (181),
5363  EM_SCROLLCARET = (183),
5364  EM_SELECTIONTYPE = (1090),
5365  EM_SETBKGNDCOLOR = (1091),
5366  EM_SETCHARFORMAT = (1092),
5367  EM_SETEVENTMASK = (1093),
5368  EM_SETHANDLE = (188),
5369  EM_SETIMECOLOR = (1128),
5370  EM_SETIMEOPTIONS = (1130),
5371  EM_SETLIMITTEXT = (197),
5372  EM_SETMARGINS = (211),
5373  EM_SETMODIFY = (185),
5374  EM_SETOLECALLBACK = (1094),
5375  EM_SETOPTIONS = (1101),
5376  EM_SETPARAFORMAT = (1095),
5377  EM_SETPASSWORDCHAR = (204),
5378  EM_SETPUNCTUATION = (1124),
5379  EM_SETREADONLY = (207),
5380  EM_SETRECT = (179),
5381  EM_SETRECTNP = (180),
5382  EM_SETSEL = (177),
5383  EM_SETTABSTOPS = (203),
5384  EM_SETTARGETDEVICE = (1096),
5385  EM_SETWORDBREAKPROC = (208),
5386  EM_SETWORDBREAKPROCEX = (1105),
5387  EM_SETWORDWRAPMODE = (1126),
5388  EM_STREAMIN = (1097),
5389  EM_STREAMOUT = (1098),
5390  EM_UNDO = (199),
5391  EN_CHANGE = (768),
5392  EN_CORRECTTEXT = (1797),
5393  EN_DROPFILES = (1795),
5394  EN_ERRSPACE = (1280),
5395  EN_HSCROLL = (1537),
5396  EN_IMECHANGE = (1799),
5397  EN_KILLFOCUS = (512),
5398  EN_MAXTEXT = (1281),
5399  EN_MSGFILTER = (1792),
5400  EN_OLEOPFAILED = (1801),
5401  EN_PROTECTED = (1796),
5402  EN_REQUESTRESIZE = (1793),
5403  EN_SAVECLIPBOARD = (1800),
5404  EN_SELCHANGE = (1794),
5405  EN_SETFOCUS = (256),
5406  EN_STOPNOUNDO = (1798),
5407  EN_UPDATE = (1024),
5408  EN_VSCROLL = (1538),
5409  HDM_DELETEITEM = (4610),
5410  HDM_GETITEMW = (4619),
5411  HDM_INSERTITEMW = (4618),
5412  HDM_SETITEMW = (4620),
5413  HDM_GETITEMA = (4611),
5414  HDM_INSERTITEMA = (4609),
5415  HDM_SETITEMA = (4612),
5416  HDM_GETITEM = (HDM_GETITEMA),
5417  HDM_INSERTITEM = (HDM_INSERTITEMA),
5418  HDM_SETITEM = (HDM_SETITEMA),
5419  HDM_GETITEMCOUNT = (4608),
5420  HDM_HITTEST = (4614),
5421  HDM_LAYOUT = (4613),
5422  HDN_BEGINTRACKW = -((326)),
5423  HDN_DIVIDERDBLCLICKW = -((325)),
5424  HDN_ENDTRACKW = -((327)),
5425  HDN_ITEMCHANGEDW = -((321)),
5426  HDN_ITEMCHANGINGW = -((320)),
5427  HDN_ITEMCLICKW = -((322)),
5428  HDN_ITEMDBLCLICKW = -((323)),
5429  HDN_TRACKW = -((328)),
5430  HDN_BEGINTRACKA = -((306)),
5431  HDN_DIVIDERDBLCLICKA = -((305)),
5432  HDN_ENDTRACKA = -((307)),
5433  HDN_ITEMCHANGEDA = -((301)),
5434  HDN_ITEMCHANGINGA = -((300)),
5435  HDN_ITEMCLICKA = -((302)),
5436  HDN_ITEMDBLCLICKA = -((303)),
5437  HDN_TRACKA = -((308)),
5438  HDN_BEGINTRACK = (HDN_BEGINTRACKA),
5439  HDN_DIVIDERDBLCLICK = (HDN_DIVIDERDBLCLICKA),
5440  HDN_ENDTRACK = (HDN_ENDTRACKA),
5441  HDN_ITEMCHANGED = (HDN_ITEMCHANGEDA),
5442  HDN_ITEMCHANGING = (HDN_ITEMCHANGINGA),
5443  HDN_ITEMCLICK = (HDN_ITEMCLICKA),
5444  HDN_ITEMDBLCLICK = (HDN_ITEMDBLCLICKA),
5445  HDN_TRACK = (HDN_TRACKA),
5446  HKM_GETHOTKEY = (1026),
5447  HKM_SETHOTKEY = (1025),
5448  HKM_SETRULES = (1027),
5449  LB_ADDFILE = (406),
5450  LB_ADDSTRING = (384),
5451  LB_DELETESTRING = (386),
5452  LB_DIR = (397),
5453  LB_FINDSTRING = (399),
5454  LB_FINDSTRINGEXACT = (418),
5455  LB_GETANCHORINDEX = (413),
5456  LB_GETCARETINDEX = (415),
5457  LB_GETCOUNT = (395),
5458  LB_GETCURSEL = (392),
5459  LB_GETHORIZONTALEXTENT = (403),
5460  LB_GETITEMDATA = (409),
5461  LB_GETITEMHEIGHT = (417),
5462  LB_GETITEMRECT = (408),
5463  LB_GETLOCALE = (422),
5464  LB_GETSEL = (391),
5465  LB_GETSELCOUNT = (400),
5466  LB_GETSELITEMS = (401),
5467  LB_GETTEXT = (393),
5468  LB_GETTEXTLEN = (394),
5469  LB_GETTOPINDEX = (398),
5470  LB_INITSTORAGE = (424),
5471  LB_INSERTSTRING = (385),
5472  LB_ITEMFROMPOINT = (425),
5473  LB_RESETCONTENT = (388),
5474  LB_SELECTSTRING = (396),
5475  LB_SELITEMRANGE = (411),
5476  LB_SELITEMRANGEEX = (387),
5477  LB_SETANCHORINDEX = (412),
5478  LB_SETCARETINDEX = (414),
5479  LB_SETCOLUMNWIDTH = (405),
5480  LB_SETCOUNT = (423),
5481  LB_SETCURSEL = (390),
5482  LB_SETHORIZONTALEXTENT = (404),
5483  LB_SETITEMDATA = (410),
5484  LB_SETITEMHEIGHT = (416),
5485  LB_SETLOCALE = (421),
5486  LB_SETSEL = (389),
5487  LB_SETTABSTOPS = (402),
5488  LB_SETTOPINDEX = (407),
5489  LBN_DBLCLK = (2),
5490  LBN_ERRSPACE = -((2)),
5491  LBN_KILLFOCUS = (5),
5492  LBN_SELCANCEL = (3),
5493  LBN_SELCHANGE = (1),
5494  LBN_SETFOCUS = (4),
5495  LVM_ARRANGE = (4118),
5496  LVM_CREATEDRAGIMAGE = (4129),
5497  LVM_DELETEALLITEMS = (4105),
5498  LVM_DELETECOLUMN = (4124),
5499  LVM_DELETEITEM = (4104),
5500  LVM_ENSUREVISIBLE = (4115),
5501  LVM_GETBKCOLOR = (4096),
5502  LVM_GETCALLBACKMASK = (4106),
5503  LVM_GETCOLUMNWIDTH = (4125),
5504  LVM_GETCOUNTPERPAGE = (4136),
5505  LVM_GETEDITCONTROL = (4120),
5506  LVM_GETIMAGELIST = (4098),
5507  LVM_EDITLABELW = (4214),
5508  LVM_FINDITEMW = (4179),
5509  LVM_GETCOLUMNW = (4191),
5510  LVM_GETISEARCHSTRINGW = (4213),
5511  LVM_GETITEMW = (4171),
5512  LVM_GETITEMTEXTW = (4211),
5513  LVM_GETSTRINGWIDTHW = (4183),
5514  LVM_INSERTCOLUMNW = (4193),
5515  LVM_INSERTITEMW = (4173),
5516  LVM_SETCOLUMNW = (4192),
5517  LVM_SETITEMW = (4172),
5518  LVM_SETITEMTEXTW = (4212),
5519  LVM_EDITLABELA = (4119),
5520  LVM_FINDITEMA = (4109),
5521  LVM_GETCOLUMNA = (4121),
5522  LVM_GETISEARCHSTRINGA = (4148),
5523  LVM_GETITEMA = (4101),
5524  LVM_GETITEMTEXTA = (4141),
5525  LVM_GETSTRINGWIDTHA = (4113),
5526  LVM_INSERTCOLUMNA = (4123),
5527  LVM_INSERTITEMA = (4103),
5528  LVM_SETCOLUMNA = (4122),
5529  LVM_SETITEMA = (4102),
5530  LVM_SETITEMTEXTA = (4142),
5531  LVM_EDITLABEL = (LVM_EDITLABELA),
5532  LVM_FINDITEM = (LVM_FINDITEMA),
5533  LVM_GETCOLUMN = (LVM_GETCOLUMNA),
5534  LVM_GETISEARCHSTRING = (LVM_GETISEARCHSTRINGA),
5535  LVM_GETITEM = (LVM_GETITEMA),
5536  LVM_GETITEMTEXT = (LVM_GETITEMTEXTA),
5537  LVM_GETSTRINGWIDTH = (LVM_GETSTRINGWIDTHA),
5538  LVM_INSERTCOLUMN = (LVM_INSERTCOLUMNA),
5539  LVM_INSERTITEM = (LVM_INSERTITEMA),
5540  LVM_SETCOLUMN = (LVM_SETCOLUMNA),
5541  LVM_SETITEM = (LVM_SETITEMA),
5542  LVM_SETITEMTEXT = (LVM_SETITEMTEXTA),
5543  LVM_GETITEMCOUNT = (4100),
5544  LVM_GETITEMPOSITION = (4112),
5545  LVM_GETITEMRECT = (4110),
5546  LVM_GETITEMSPACING = (4147),
5547  LVM_GETITEMSTATE = (4140),
5548  LVM_GETNEXTITEM = (4108),
5549  LVM_GETORIGIN = (4137),
5550  LVM_GETSELECTEDCOUNT = (4146),
5551  LVM_GETTEXTBKCOLOR = (4133),
5552  LVM_GETTEXTCOLOR = (4131),
5553  LVM_GETTOPINDEX = (4135),
5554  LVM_GETVIEWRECT = (4130),
5555  LVM_HITTEST = (4114),
5556  LVM_REDRAWITEMS = (4117),
5557  LVM_SCROLL = (4116),
5558  LVM_SETBKCOLOR = (4097),
5559  LVM_SETCALLBACKMASK = (4107),
5560  LVM_SETCOLUMNWIDTH = (4126),
5561  LVM_SETIMAGELIST = (4099),
5562  LVM_SETITEMCOUNT = (4143),
5563  LVM_SETITEMPOSITION = (4111),
5564  LVM_SETITEMPOSITION32 = (4145),
5565  LVM_SETITEMSTATE = (4139),
5566  LVM_SETTEXTBKCOLOR = (4134),
5567  LVM_SETTEXTCOLOR = (4132),
5568  LVM_SORTITEMS = (4144),
5569  LVM_UPDATE = (4138),
5570  LVN_BEGINDRAG = -((109)),
5571  LVN_BEGINRDRAG = -((111)),
5572  LVN_COLUMNCLICK = -((108)),
5573  LVN_DELETEALLITEMS = -((104)),
5574  LVN_DELETEITEM = -((103)),
5575  LVN_BEGINLABELEDITW = -((175)),
5576  LVN_ENDLABELEDITW = -((176)),
5577  LVN_GETDISPINFOW = -((177)),
5578  LVN_SETDISPINFOW = -((178)),
5579  LVN_BEGINLABELEDITA = -((105)),
5580  LVN_ENDLABELEDITA = -((106)),
5581  LVN_GETDISPINFOA = -((150)),
5582  LVN_SETDISPINFOA = -((151)),
5583  LVN_BEGINLABELEDIT = (LVN_BEGINLABELEDITA),
5584  LVN_ENDLABELEDIT = (LVN_ENDLABELEDITA),
5585  LVN_GETDISPINFO = (LVN_GETDISPINFOA),
5586  LVN_SETDISPINFO = (LVN_SETDISPINFOA),
5587  LVN_INSERTITEM = -((102)),
5588  LVN_ITEMCHANGED = -((101)),
5589  LVN_ITEMCHANGING = -((100)),
5590  LVN_KEYDOWN = -((155)),
5591  NM_CLICK = -((2)),
5592  NM_DBLCLK = -((3)),
5593  NM_KILLFOCUS = -((8)),
5594  NM_OUTOFMEMORY = -((1)),
5595  NM_RCLICK = -((5)),
5596  NM_RDBLCLK = -((6)),
5597  NM_RETURN = -((4)),
5598  NM_SETFOCUS = -((7)),
5599  PBM_DELTAPOS = (1027),
5600  PBM_SETPOS = (1026),
5601  PBM_SETRANGE = (1025),
5602  PBM_SETSTEP = (1028),
5603  PBM_STEPIT = (1029),
5604  PSM_ADDPAGE = (1127),
5605  PSM_APPLY = (1134),
5606  PSM_CANCELTOCLOSE = (1131),
5607  PSM_CHANGED = (1128),
5608  PSM_GETTABCONTROL = (1140),
5609  PSM_GETCURRENTPAGEHWND = (1142),
5610  PSM_ISDIALOGMESSAGE = (1141),
5611  PSM_PRESSBUTTON = (1137),
5612  PSM_QUERYSIBLINGS = (1132),
5613  PSM_REBOOTSYSTEM = (1130),
5614  PSM_REMOVEPAGE = (1126),
5615  PSM_RESTARTWINDOWS = (1129),
5616  PSM_SETCURSEL = (1125),
5617  PSM_SETCURSELID = (1138),
5618  PSM_SETFINISHTEXTW = (1145),
5619  PSM_SETTITLEW = (1144),
5620  PSM_SETFINISHTEXTA = (1139),
5621  PSM_SETTITLEA = (1135),
5622  PSM_SETFINISHTEXT = (PSM_SETFINISHTEXTA),
5623  PSM_SETTITLE = (PSM_SETTITLEA),
5624  PSM_SETWIZBUTTONS = (1136),
5625  PSM_UNCHANGED = (1133),
5626  PSN_APPLY = -((202)),
5627  PSN_HELP = -((205)),
5628  PSN_KILLACTIVE = -((201)),
5629  PSN_QUERYCANCEL = -((209)),
5630  PSN_RESET = -((203)),
5631  PSN_SETACTIVE = -((200)),
5632  PSN_WIZBACK = -((206)),
5633  PSN_WIZFINISH = -((208)),
5634  PSN_WIZNEXT = -((207)),
5635  SB_GETBORDERS = (1031),
5636  SB_GETPARTS = (1030),
5637  SB_GETRECT = (1034),
5638  SB_GETTEXTW = (1037),
5639  SB_GETTEXTLENGTHW = (1036),
5640  SB_SETTEXTW = (1035),
5641  SB_GETTEXTA = (1026),
5642  SB_GETTEXTLENGTHA = (1027),
5643  SB_SETTEXTA = (1025),
5644  SB_GETTEXT = (SB_GETTEXTA),
5645  SB_GETTEXTLENGTH = (SB_GETTEXTLENGTHA),
5646  SB_SETTEXT = (SB_SETTEXTA),
5647  SB_SETMINHEIGHT = (1032),
5648  SB_SETPARTS = (1028),
5649  SB_SIMPLE = (1033),
5650  SBM_ENABLE_ARROWS = (228),
5651  SBM_GETPOS = (225),
5652  SBM_GETRANGE = (227),
5653  SBM_GETSCROLLINFO = (234),
5654  SBM_SETPOS = (224),
5655  SBM_SETRANGE = (226),
5656  SBM_SETRANGEREDRAW = (230),
5657  SBM_SETSCROLLINFO = (233),
5658  STM_GETICON = (369),
5659  STM_GETIMAGE = (371),
5660  STM_SETICON = (368),
5661  STM_SETIMAGE = (370),
5662  STN_CLICKED = (0),
5663  STN_DBLCLK = (1),
5664  STN_DISABLE = (3),
5665  STN_ENABLE = (2),
5666  TB_ADDBITMAP = (1043),
5667  TB_ADDBUTTONS = (1044),
5668  TB_AUTOSIZE = (1057),
5669  TB_BUTTONCOUNT = (1048),
5670  TB_BUTTONSTRUCTSIZE = (1054),
5671  TB_CHANGEBITMAP = (1067),
5672  TB_CHECKBUTTON = (1026),
5673  TB_COMMANDTOINDEX = (1049),
5674  TB_CUSTOMIZE = (1051),
5675  TB_DELETEBUTTON = (1046),
5676  TB_ENABLEBUTTON = (1025),
5677  TB_GETBITMAP = (1068),
5678  TB_GETBITMAPFLAGS = (1065),
5679  TB_GETBUTTON = (1047),
5680  TB_ADDSTRINGW = (1101),
5681  TB_GETBUTTONTEXTW = (1099),
5682  TB_SAVERESTOREW = (1100),
5683  TB_ADDSTRINGA = (1052),
5684  TB_GETBUTTONTEXTA = (1069),
5685  TB_SAVERESTOREA = (1050),
5686  TB_ADDSTRING = (TB_ADDSTRINGA),
5687  TB_GETBUTTONTEXT = (TB_GETBUTTONTEXTA),
5688  TB_SAVERESTORE = (TB_SAVERESTOREA),
5689  TB_GETITEMRECT = (1053),
5690  TB_GETROWS = (1064),
5691  TB_GETSTATE = (1042),
5692  TB_GETTOOLTIPS = (1059),
5693  TB_HIDEBUTTON = (1028),
5694  TB_INDETERMINATE = (1029),
5695  TB_INSERTBUTTON = (1045),
5696  TB_ISBUTTONCHECKED = (1034),
5697  TB_ISBUTTONENABLED = (1033),
5698  TB_ISBUTTONHIDDEN = (1036),
5699  TB_ISBUTTONINDETERMINATE = (1037),
5700  TB_ISBUTTONPRESSED = (1035),
5701  TB_PRESSBUTTON = (1027),
5702  TB_SETBITMAPSIZE = (1056),
5703  TB_SETBUTTONSIZE = (1055),
5704  TB_SETCMDID = (1066),
5705  TB_SETPARENT = (1061),
5706  TB_SETROWS = (1063),
5707  TB_SETSTATE = (1041),
5708  TB_SETTOOLTIPS = (1060),
5709  TBM_CLEARSEL = (1043),
5710  TBM_CLEARTICS = (1033),
5711  TBM_GETCHANNELRECT = (1050),
5712  TBM_GETLINESIZE = (1048),
5713  TBM_GETNUMTICS = (1040),
5714  TBM_GETPAGESIZE = (1046),
5715  TBM_GETPOS = (1024),
5716  TBM_GETPTICS = (1038),
5717  TBM_GETRANGEMAX = (1026),
5718  TBM_GETRANGEMIN = (1025),
5719  TBM_GETSELEND = (1042),
5720  TBM_GETSELSTART = (1041),
5721  TBM_GETTHUMBLENGTH = (1052),
5722  TBM_GETTHUMBRECT = (1049),
5723  TBM_GETTIC = (1027),
5724  TBM_GETTICPOS = (1039),
5725  TBM_SETLINESIZE = (1047),
5726  TBM_SETPAGESIZE = (1045),
5727  TBM_SETPOS = (1029),
5728  TBM_SETRANGE = (1030),
5729  TBM_SETRANGEMAX = (1032),
5730  TBM_SETRANGEMIN = (1031),
5731  TBM_SETSEL = (1034),
5732  TBM_SETSELEND = (1036),
5733  TBM_SETSELSTART = (1035),
5734  TBM_SETTHUMBLENGTH = (1051),
5735  TBM_SETTIC = (1028),
5736  TBM_SETTICFREQ = (1044),
5737  TBN_BEGINADJUST = -((703)),
5738  TBN_BEGINDRAG = -((701)),
5739  TBN_CUSTHELP = -((709)),
5740  TBN_ENDADJUST = -((704)),
5741  TBN_ENDDRAG = -((702)),
5742  TBN_GETBUTTONINFOW = -((720)),
5743  TBN_GETBUTTONINFOA = -((700)),
5744  TBN_GETBUTTONINFO = (TBN_GETBUTTONINFOA),
5745  TBN_QUERYDELETE = -((707)),
5746  TBN_QUERYINSERT = -((706)),
5747  TBN_RESET = -((705)),
5748  TBN_TOOLBARCHANGE = -((708)),
5749  TCM_ADJUSTRECT = (4904),
5750  TCM_DELETEALLITEMS = (4873),
5751  TCM_DELETEITEM = (4872),
5752  TCM_GETCURFOCUS = (4911),
5753  TCM_GETCURSEL = (4875),
5754  TCM_GETIMAGELIST = (4866),
5755  TCM_GETITEMW = (4924),
5756  TCM_INSERTITEMW = (4926),
5757  TCM_SETITEMW = (4925),
5758  TCM_GETITEMA = (4869),
5759  TCM_INSERTITEMA = (4871),
5760  TCM_SETITEMA = (4870),
5761  TCM_GETITEM = (TCM_GETITEMA),
5762  TCM_INSERTITEM = (TCM_INSERTITEMA),
5763  TCM_SETITEM = (TCM_SETITEMA),
5764  TCM_GETITEMCOUNT = (4868),
5765  TCM_GETITEMRECT = (4874),
5766  TCM_GETROWCOUNT = (4908),
5767  TCM_GETTOOLTIPS = (4909),
5768  TCM_HITTEST = (4877),
5769  TCM_REMOVEIMAGE = (4906),
5770  TCM_SETCURFOCUS = (4912),
5771  TCM_SETCURSEL = (4876),
5772  TCM_SETIMAGELIST = (4867),
5773  TCM_SETITEMEXTRA = (4878),
5774  TCM_SETITEMSIZE = (4905),
5775  TCM_SETPADDING = (4907),
5776  TCM_SETTOOLTIPS = (4910),
5777  TCN_KEYDOWN = -((550)),
5778  TCN_SELCHANGE = -((551)),
5779  TCN_SELCHANGING = -((552)),
5780  TTM_ACTIVATE = (1025),
5781  TTM_ADDTOOLW = (1074),
5782  TTM_DELTOOLW = (1075),
5783  TTM_ENUMTOOLSW = (1082),
5784  TTM_GETCURRENTTOOLW = (1083),
5785  TTM_GETTEXTW = (1080),
5786  TTM_GETTOOLINFOW = (1077),
5787  TTM_HITTESTW = (1079),
5788  TTM_NEWTOOLRECTW = (1076),
5789  TTM_SETTOOLINFOW = (1078),
5790  TTM_UPDATETIPTEXTW = (1081),
5791  TTM_ADDTOOLA = (1028),
5792  TTM_DELTOOLA = (1029),
5793  TTM_ENUMTOOLSA = (1038),
5794  TTM_GETCURRENTTOOLA = (1039),
5795  TTM_GETTEXTA = (1035),
5796  TTM_GETTOOLINFOA = (1032),
5797  TTM_HITTESTA = (1034),
5798  TTM_NEWTOOLRECTA = (1030),
5799  TTM_SETTOOLINFOA = (1033),
5800  TTM_UPDATETIPTEXTA = (1036),
5801  TTM_ADDTOOL = (TTM_ADDTOOLA),
5802  TTM_DELTOOL = (TTM_DELTOOLA),
5803  TTM_ENUMTOOLS = (TTM_ENUMTOOLSA),
5804  TTM_GETCURRENTTOOL = (TTM_GETCURRENTTOOLA),
5805  TTM_GETTEXT = (TTM_GETTEXTA),
5806  TTM_GETTOOLINFO = (TTM_GETTOOLINFOA),
5807  TTM_HITTEST = (TTM_HITTESTA),
5808  TTM_NEWTOOLRECT = (TTM_NEWTOOLRECTA),
5809  TTM_SETTOOLINFO = (TTM_SETTOOLINFOA),
5810  TTM_UPDATETIPTEXT = (TTM_UPDATETIPTEXTA),
5811  TTM_GETTOOLCOUNT = (1037),
5812  TTM_RELAYEVENT = (1031),
5813  TTM_SETDELAYTIME = (1027),
5814  TTM_WINDOWFROMPOINT = (1040),
5815  TTN_NEEDTEXTW = -((530)),
5816  TTN_NEEDTEXTA = -((520)),
5817  TTN_NEEDTEXT = (TTN_NEEDTEXTA),
5818  TTN_POP = -((522)),
5819  TTN_SHOW = -((521)),
5820  TVM_CREATEDRAGIMAGE = (4370),
5821  TVM_DELETEITEM = (4353),
5822  TVM_ENDEDITLABELNOW = (4374),
5823  TVM_ENSUREVISIBLE = (4372),
5824  TVM_EXPAND = (4354),
5825  TVM_GETCOUNT = (4357),
5826  TVM_GETEDITCONTROL = (4367),
5827  TVM_GETIMAGELIST = (4360),
5828  TVM_GETINDENT = (4358),
5829  TVM_GETITEMRECT = (4356),
5830  TVM_GETNEXTITEM = (4362),
5831  TVM_GETVISIBLECOUNT = (4368),
5832  TVM_HITTEST = (4369),
5833  TVM_EDITLABELW = (4417),
5834  TVM_GETISEARCHSTRINGW = (4416),
5835  TVM_GETITEMW = (4414),
5836  TVM_INSERTITEMW = (4402),
5837  TVM_SETITEMW = (4415),
5838  TVM_EDITLABELA = (4366),
5839  TVM_GETISEARCHSTRINGA = (4375),
5840  TVM_GETITEMA = (4364),
5841  TVM_INSERTITEMA = (4352),
5842  TVM_SETITEMA = (4365),
5843  TVM_EDITLABEL = (TVM_EDITLABELA),
5844  TVM_GETISEARCHSTRING = (TVM_GETISEARCHSTRINGA),
5845  TVM_GETITEM = (TVM_GETITEMA),
5846  TVM_INSERTITEM = (TVM_INSERTITEMA),
5847  TVM_SETITEM = (TVM_SETITEMA),
5848  TVM_SELECTITEM = (4363),
5849  TVM_SETIMAGELIST = (4361),
5850  TVM_SETINDENT = (4359),
5851  TVM_SORTCHILDREN = (4371),
5852  TVM_SORTCHILDRENCB = (4373),
5853  TVN_KEYDOWN = -((412)),
5854  TVN_BEGINDRAGW = -((456)),
5855  TVN_BEGINLABELEDITW = -((459)),
5856  TVN_BEGINRDRAGW = -((457)),
5857  TVN_DELETEITEMW = -((458)),
5858  TVN_ENDLABELEDITW = -((460)),
5859  TVN_GETDISPINFOW = -((452)),
5860  TVN_ITEMEXPANDEDW = -((455)),
5861  TVN_ITEMEXPANDINGW = -((454)),
5862  TVN_SELCHANGEDW = -((451)),
5863  TVN_SELCHANGINGW = -((450)),
5864  TVN_SETDISPINFOW = -((453)),
5865  TVN_BEGINDRAGA = -((407)),
5866  TVN_BEGINLABELEDITA = -((410)),
5867  TVN_BEGINRDRAGA = -((408)),
5868  TVN_DELETEITEMA = -((409)),
5869  TVN_ENDLABELEDITA = -((411)),
5870  TVN_GETDISPINFOA = -((403)),
5871  TVN_ITEMEXPANDEDA = -((406)),
5872  TVN_ITEMEXPANDINGA = -((405)),
5873  TVN_SELCHANGEDA = -((402)),
5874  TVN_SELCHANGINGA = -((401)),
5875  TVN_SETDISPINFOA = -((404)),
5876  TVN_BEGINDRAG = (TVN_BEGINDRAGA),
5877  TVN_BEGINLABELEDIT = (TVN_BEGINLABELEDITA),
5878  TVN_BEGINRDRAG = (TVN_BEGINRDRAGA),
5879  TVN_DELETEITEM = (TVN_DELETEITEMA),
5880  TVN_ENDLABELEDIT = (TVN_ENDLABELEDITA),
5881  TVN_GETDISPINFO = (TVN_GETDISPINFOA),
5882  TVN_ITEMEXPANDED = (TVN_ITEMEXPANDEDA),
5883  TVN_ITEMEXPANDING = (TVN_ITEMEXPANDINGA),
5884  TVN_SELCHANGED = (TVN_SELCHANGEDA),
5885  TVN_SELCHANGING = (TVN_SELCHANGINGA),
5886  TVN_SETDISPINFO = (TVN_SETDISPINFOA),
5887  UDM_GETACCEL = (1132),
5888  UDM_GETBASE = (1134),
5889  UDM_GETBUDDY = (1130),
5890  UDM_GETPOS = (1128),
5891  UDM_GETRANGE = (1126),
5892  UDM_SETACCEL = (1131),
5893  UDM_SETBASE = (1133),
5894  UDM_SETBUDDY = (1129),
5895  UDM_SETPOS = (1127),
5896  UDM_SETRANGE = (1125),
5897  UDN_DELTAPOS = -((722)),
5898  WM_ACTIVATE = (6),
5899  WM_ACTIVATEAPP = (28),
5900  WM_ASKCBFORMATNAME = (780),
5901  WM_CANCELJOURNAL = (75),
5902  WM_CANCELMODE = (31),
5903  WM_CAPTURECHANGED = (533),
5904  WM_CHANGECBCHAIN = (781),
5905  WM_CHAR = (258),
5906  WM_CHARTOITEM = (47),
5907  WM_CHILDACTIVATE = (34),
5908  WM_CHOOSEFONT_GETLOGFONT = (1025),
5909  WM_CHOOSEFONT_SETLOGFONT = (1125),
5910  WM_CHOOSEFONT_SETFLAGS = (1126),
5911  WM_CLEAR = (771),
5912  WM_CLOSE = (16),
5913  WM_COMMAND = (273),
5914  WM_COMPACTING = (65),
5915  WM_COMPAREITEM = (57),
5916  WM___FILE__MENU = (123),
5917  WM_COPY = (769),
5918  WM_COPYDATA = (74),
5919  WM_CREATE = (1),
5920  WM_CTLCOLORBTN = (309),
5921  WM_CTLCOLORDLG = (310),
5922  WM_CTLCOLOREDIT = (307),
5923  WM_CTLCOLORLISTBOX = (308),
5924  WM_CTLCOLORMSGBOX = (306),
5925  WM_CTLCOLORSCROLLBAR = (311),
5926  WM_CTLCOLORSTATIC = (312),
5927  WM_CUT = (768),
5928  WM_DEADCHAR = (259),
5929  WM_DELETEITEM = (45),
5930  WM_DESTROY = (2),
5931  WM_DESTROYCLIPBOARD = (775),
5932  WM_DEVICECHANGE = (537),
5933  WM_DEVMODECHANGE = (27),
5934  WM_DISPLAYCHANGE = (126),
5935  WM_DRAWCLIPBOARD = (776),
5936  WM_DRAWITEM = (43),
5937  WM_DROPFILES = (563),
5938  WM_ENABLE = (10),
5939  WM_ENDSESSION = (22),
5940  WM_ENTERIDLE = (289),
5941  WM_ENTERMENULOOP = (529),
5942  WM_ENTERSIZEMOVE = (561),
5943  WM_ERASEBKGND = (20),
5944  WM_EXITMENULOOP = (530),
5945  WM_EXITSIZEMOVE = (562),
5946  WM_FONTCHANGE = (29),
5947  WM_GETDLGCODE = (135),
5948  WM_GETFONT = (49),
5949  WM_GETHOTKEY = (51),
5950  WM_GETICON = (127),
5951  WM_GETMINMAXINFO = (36),
5952  WM_GETTEXT = (13),
5953  WM_GETTEXTLENGTH = (14),
5954  WM_HELP = (83),
5955  WM_HOTKEY = (786),
5956  WM_HSCROLL = (276),
5957  WM_HSCROLLCLIPBOARD = (782),
5958  WM_ICONERASEBKGND = (39),
5959  WM_IME_CHAR = (646),
5960  WM_IME_COMPOSITION = (271),
5961  WM_IME_COMPOSITIONFULL = (644),
5962  WM_IME_CONTROL = (643),
5963  WM_IME_ENDCOMPOSITION = (270),
5964  WM_IME_KEYDOWN = (656),
5965  WM_IME_KEYUP = (657),
5966  WM_IME_NOTIFY = (642),
5967  WM_IME_SELECT = (645),
5968  WM_IME_SET__FILE__ = (641),
5969  WM_IME_STARTCOMPOSITION = (269),
5970  WM_INITDIALOG = (272),
5971  WM_INITMENU = (278),
5972  WM_INITMENUPOPUP = (279),
5973  WM_INPUTLANGCHANGE = (81),
5974  WM_INPUTLANGCHANGEREQUEST = (80),
5975  WM_KEYDOWN = (256),
5976  WM_KEYUP = (257),
5977  WM_KILLFOCUS = (8),
5978  WM_LBUTTONDBLCLK = (515),
5979  WM_LBUTTONDOWN = (513),
5980  WM_LBUTTONUP = (514),
5981  WM_MBUTTONDBLCLK = (521),
5982  WM_MBUTTONDOWN = (519),
5983  WM_MBUTTONUP = (520),
5984  WM_MDIACTIVATE = (546),
5985  WM_MDICASCADE = (551),
5986  WM_MDICREATE = (544),
5987  WM_MDIDESTROY = (545),
5988  WM_MDIGETACTIVE = (553),
5989  WM_MDIICONARRANGE = (552),
5990  WM_MDIMAXIMIZE = (549),
5991  WM_MDINEXT = (548),
5992  WM_MDIREFRESHMENU = (564),
5993  WM_MDIRESTORE = (547),
5994  WM_MDISETMENU = (560),
5995  WM_MDITILE = (550),
5996  WM_MEASUREITEM = (44),
5997  WM_MENUCHAR = (288),
5998  WM_MENUSELECT = (287),
5999  WM_MOUSEACTIVATE = (33),
6000  WM_MOUSEMOVE = (512),
6001  WM_MOUSEWHEEL = 0x020A,
6002  WM_MOVE = (3),
6003  WM_MOVING = (534),
6004  WM_NCACTIVATE = (134),
6005  WM_NCCALCSIZE = (131),
6006  WM_NCCREATE = (129),
6007  WM_NCDESTROY = (130),
6008  WM_NCHITTEST = (132),
6009  WM_NCLBUTTONDBLCLK = (163),
6010  WM_NCLBUTTONDOWN = (161),
6011  WM_NCLBUTTONUP = (162),
6012  WM_NCMBUTTONDBLCLK = (169),
6013  WM_NCMBUTTONDOWN = (167),
6014  WM_NCMBUTTONUP = (168),
6015  WM_NCMOUSEMOVE = (160),
6016  WM_NCPAINT = (133),
6017  WM_NCRBUTTONDBLCLK = (166),
6018  WM_NCRBUTTONDOWN = (164),
6019  WM_NCRBUTTONUP = (165),
6020  WM_NEXTDLGCTL = (40),
6021  WM_NOTIFY = (78),
6022  WM_NOTIFYFORMAT = (85),
6023  WM_NULL = (0),
6024  WM_PAINT = (15),
6025  WM_PAINTCLIPBOARD = (777),
6026  WM_PAINTICON = (38),
6027  WM_PALETTECHANGED = (785),
6028  WM_PALETTEISCHANGING = (784),
6029  WM_PARENTNOTIFY = (528),
6030  WM_PASTE = (770),
6031  WM_PENWINFIRST = (896),
6032  WM_PENWINLAST = (911),
6033  WM_POWER = (72),
6034  WM_POWERBROADCAST = (536),
6035  WM_PRINT = (791),
6036  WM_PRINTCLIENT = (792),
6037  WM_PSD_ENVSTAMPRECT = (1029),
6038  WM_PSD_FULLPAGERECT = (1025),
6039  WM_PSD_GREEKTEXTRECT = (1028),
6040  WM_PSD_MARGINRECT = (1027),
6041  WM_PSD_MINMARGINRECT = (1026),
6042  WM_PSD_PAGESETUPDLG = (1024),
6043  WM_PSD_YAFULLPAGERECT = (1030),
6044  WM_QUERYDRAGICON = (55),
6045  WM_QUERYENDSESSION = (17),
6046  WM_QUERYNEWPALETTE = (783),
6047  WM_QUERYOPEN = (19),
6048  WM_QUEUESYNC = (35),
6049  WM_QUIT = (18),
6050  WM_RBUTTONDBLCLK = (518),
6051  WM_RBUTTONDOWN = (516),
6052  WM_RBUTTONUP = (517),
6053  WM_RENDERALLFORMATS = (774),
6054  WM_RENDERFORMAT = (773),
6055  WM_SETCURSOR = (32),
6056  WM_SETFOCUS = (7),
6057  WM_SETFONT = (48),
6058  WM_SETHOTKEY = (50),
6059  WM_SETICON = (128),
6060  WM_SETREDRAW = (11),
6061  WM_SETTEXT = (12),
6062  WM_SETTINGCHANGE = (26),
6063  WM_SHOWWINDOW = (24),
6064  WM_SIZE = (5),
6065  WM_SIZECLIPBOARD = (779),
6066  WM_SIZING = (532),
6067  WM_SPOOLERSTATUS = (42),
6068  WM_STYLECHANGED = (125),
6069  WM_STYLECHANGING = (124),
6070  WM_SYSCHAR = (262),
6071  WM_SYSCOLORCHANGE = (21),
6072  WM_SYSCOMMAND = (274),
6073  WM_SYSDEADCHAR = (263),
6074  WM_SYSKEYDOWN = (260),
6075  WM_SYSKEYUP = (261),
6076  WM_TCARD = (82),
6077  WM_TIMECHANGE = (30),
6078  WM_TIMER = (275),
6079  WM_UNDO = (772),
6080  WM_USER = (1024),
6081  WM_USERCHANGED = (84),
6082  WM_VKEYTOITEM = (46),
6083  WM_VSCROLL = (277),
6084  WM_VSCROLLCLIPBOARD = (778),
6085  WM_WINDOWPOSCHANGED = (71),
6086  WM_WINDOWPOSCHANGING = (70),
6087  WM_WININICHANGE = (26),
6088  WM_KEYFIRST = (256),
6089  WM_KEYLAST = (264),
6090  WM_MOUSEFIRST = (512),
6091  WM_MOUSELAST = (521),
6092 }
6093 
6094 struct VA_LIST
6095 {
6096 }
6097 
6098 
6099 struct ABC
6100 {
6101  int abcA;
6102  UINT abcB;
6103  int abcC;
6104 }
6105 
6106 alias ABC* LPABC;
6107 alias ABC _ABC;
6108 alias ABC TABC;
6109 alias ABC* PABC;
6110 
6111 struct ABCFLOAT
6112 {
6113  FLOAT abcfA;
6114  FLOAT abcfB;
6115  FLOAT abcfC;
6116 }
6117 
6118 alias ABCFLOAT* LPABCFLOAT;
6119 alias ABCFLOAT _ABCFLOAT;
6120 alias ABCFLOAT TABCFLOAT;
6121 alias ABCFLOAT* PABCFLOAT;
6122 
6123 struct ACCEL
6124 {
6125  ubyte fVirt;
6126  ushort key;
6127  ushort cmd;
6128 }
6129 
6130 alias ACCEL* LPACCEL;
6131 alias ACCEL _ACCEL;
6132 alias ACCEL TACCEL;
6133 alias ACCEL* PACCEL;
6134 
6135 struct ACE_HEADER
6136 {
6137  ubyte AceType;
6138  ubyte AceFlags;
6139  ushort AceSize;
6140 }
6141 
6142 alias ACE_HEADER _ACE_HEADER;
6143 alias ACE_HEADER TACE_HEADER;
6144 alias ACE_HEADER* PACE_HEADER;
6145 alias DWORD ACCESS_MASK;
6146 alias ACCESS_MASK REGSAM;
6147 
6148 struct ACCESS_ALLOWED_ACE
6149 {
6150  ACE_HEADER Header;
6151  ACCESS_MASK Mask;
6152  DWORD SidStart;
6153 }
6154 
6155 alias ACCESS_ALLOWED_ACE _ACCESS_ALLOWED_ACE;
6156 alias ACCESS_ALLOWED_ACE TACCESS_ALLOWED_ACE;
6157 alias ACCESS_ALLOWED_ACE* PACCESS_ALLOWED_ACE;
6158 
6159 struct ACCESS_DENIED_ACE
6160 {
6161  ACE_HEADER Header;
6162  ACCESS_MASK Mask;
6163  DWORD SidStart;
6164 }
6165 
6166 alias ACCESS_DENIED_ACE _ACCESS_DENIED_ACE;
6167 alias ACCESS_DENIED_ACE TACCESS_DENIED_ACE;
6168 
6169 struct ACCESSTIMEOUT
6170 {
6171  UINT cbSize;
6172  DWORD dwFlags;
6173  DWORD iTimeOutMSec;
6174 }
6175 
6176 alias ACCESSTIMEOUT _ACCESSTIMEOUT;
6177 alias ACCESSTIMEOUT TACCESSTIMEOUT;
6178 alias ACCESSTIMEOUT* PACCESSTIMEOUT;
6179 
6180 struct ACL
6181 {
6182  ubyte AclRevision;
6183  ubyte Sbz1;
6184  ushort AclSize;
6185  ushort AceCount;
6186  ushort Sbz2;
6187 }
6188 
6189 alias ACL* PACL;
6190 alias ACL _ACL;
6191 alias ACL TACL;
6192 
6193 struct ACL_REVISION_INFORMATION
6194 {
6195  DWORD AclRevision;
6196 }
6197 
6198 alias ACL_REVISION_INFORMATION _ACL_REVISION_INFORMATION;
6199 alias ACL_REVISION_INFORMATION TACLREVISIONINFORMATION;
6200 alias ACL_REVISION_INFORMATION* PACLREVISIONINFORMATION;
6201 
6202 struct ACL_SIZE_INFORMATION
6203 {
6204  DWORD AceCount;
6205  DWORD AclBytesInUse;
6206  DWORD AclBytesFree;
6207 }
6208 
6209 alias ACL_SIZE_INFORMATION _ACL_SIZE_INFORMATION;
6210 alias ACL_SIZE_INFORMATION TACLSIZEINFORMATION;
6211 alias ACL_SIZE_INFORMATION* PACLSIZEINFORMATION;
6212 
6213 struct ACTION_HEADER
6214 {
6215  ULONG transport_id;
6216  USHORT action_code;
6217  USHORT reserved;
6218 }
6219 
6220 alias ACTION_HEADER _ACTION_HEADER;
6221 alias ACTION_HEADER TACTIONHEADER;
6222 alias ACTION_HEADER* PACTIONHEADER;
6223 
6224 struct ADAPTER_STATUS
6225 {
6226  UCHAR[1 + 5] adapter_address;
6227  UCHAR rev_major;
6228  UCHAR reserved0;
6229  UCHAR adapter_type;
6230  UCHAR rev_minor;
6231  ushort duration;
6232  ushort frmr_recv;
6233  ushort frmr_xmit;
6234  ushort iframe_recv_err;
6235  ushort xmit_aborts;
6236  DWORD xmit_success;
6237  DWORD recv_success;
6238  ushort iframe_xmit_err;
6239  ushort recv_buff_unavail;
6240  ushort t1_timeouts;
6241  ushort ti_timeouts;
6242  DWORD reserved1;
6243  ushort free_ncbs;
6244  ushort max_cfg_ncbs;
6245  ushort max_ncbs;
6246  ushort xmit_buf_unavail;
6247  ushort max_dgram_size;
6248  ushort pending_sess;
6249  ushort max_cfg_sess;
6250  ushort max_sess;
6251  ushort max_sess_pkt_size;
6252  ushort name_count;
6253 }
6254 
6255 alias ADAPTER_STATUS _ADAPTER_STATUS;
6256 alias ADAPTER_STATUS TADAPTERSTATUS;
6257 alias ADAPTER_STATUS* PADAPTERSTATUS;
6258 
6259 struct ADDJOB_INFO_1
6260 {
6261  LPTSTR Path;
6262  DWORD JobId;
6263 }
6264 
6265 alias ADDJOB_INFO_1 _ADDJOB_INFO_1;
6266 alias ADDJOB_INFO_1 TADDJOB_INFO_1;
6267 alias ADDJOB_INFO_1* PADDJOB_INFO_1;
6268 
6269 struct ANIMATIONINFO
6270 {
6271  UINT cbSize;
6272  int iMinAnimate;
6273 }
6274 
6275 alias ANIMATIONINFO* LPANIMATIONINFO;
6276 alias ANIMATIONINFO _ANIMATIONINFO;
6277 alias ANIMATIONINFO TANIMATIONINFO;
6278 alias ANIMATIONINFO* PANIMATIONINFO;
6279 
6280 struct RECT
6281 {
6282  LONG left;
6283  LONG top;
6284  LONG right;
6285  LONG bottom;
6286 }
6287 
6288 alias RECT* LPCRECT;
6289 alias RECT* LPRECT;
6290 alias RECT _RECT;
6291 alias RECT TRECT;
6292 alias RECT* PRECT;
6293 
6294 struct RECTL
6295 {
6296  LONG left;
6297  LONG top;
6298  LONG right;
6299  LONG bottom;
6300 }
6301 
6302 alias RECTL _RECTL;
6303 alias RECTL TRECTL;
6304 alias RECTL* PRECTL;
6305 alias RECTL* LPRECTL;
6306 alias RECTL* LPCRECTL;
6307 
6308 struct APPBARDATA
6309 {
6310  DWORD cbSize;
6311  HWND hWnd;
6312  UINT uCallbackMessage;
6313  UINT uEdge;
6314  RECT rc;
6315  LPARAM lParam;
6316 }
6317 
6318 alias APPBARDATA _APPBARDATA;
6319 alias APPBARDATA TAPPBARDATA;
6320 alias APPBARDATA* PAPPBARDATA;
6321 
6322 struct BITMAP
6323 {
6324  LONG bmType;
6325  LONG bmWidth;
6326  LONG bmHeight;
6327  LONG bmWidthBytes;
6328  ushort bmPlanes;
6329  ushort bmBitsPixel;
6330  LPVOID bmBits;
6331 }
6332 
6333 alias BITMAP* PBITMAP;
6334 alias BITMAP* NPBITMAP;
6335 alias BITMAP* LPBITMAP;
6336 alias BITMAP TAGBITMAP;
6337 alias BITMAP TBITMAP;
6338 
6339 struct BITMAPCOREHEADER
6340 {
6341  DWORD bcSize;
6342  ushort bcWidth;
6343  ushort bcHeight;
6344  ushort bcPlanes;
6345  ushort bcBitCount;
6346 }
6347 
6348 alias BITMAPCOREHEADER TAGBITMAPCOREHEADER;
6349 alias BITMAPCOREHEADER TBITMAPCOREHEADER;
6350 alias BITMAPCOREHEADER* PBITMAPCOREHEADER;
6351 
6352 struct RGBTRIPLE
6353 {
6354  ubyte rgbtBlue;
6355  ubyte rgbtGreen;
6356  ubyte rgbtRed;
6357 }
6358 
6359 alias RGBTRIPLE TAGRGBTRIPLE;
6360 alias RGBTRIPLE TRGBTRIPLE;
6361 alias RGBTRIPLE* PRGBTRIPLE;
6362 
6363 struct BITMAPCOREINFO
6364 {
6365  BITMAPCOREHEADER bmciHeader;
6366  RGBTRIPLE[1 + 0] bmciColors;
6367 }
6368 
6369 alias BITMAPCOREINFO* PBITMAPCOREINFO;
6370 alias BITMAPCOREINFO* LPBITMAPCOREINFO;
6371 alias BITMAPCOREINFO _BITMAPCOREINFO;
6372 alias BITMAPCOREINFO TBITMAPCOREINFO;
6373 
6374 align(1) struct BITMAPINFOHEADER
6375 {
6376  DWORD biSize;
6377  LONG biWidth;
6378  LONG biHeight;
6379  ushort biPlanes;
6380  ushort biBitCount;
6381  DWORD biCompression;
6382  DWORD biSizeImage;
6383  LONG biXPelsPerMeter;
6384  LONG biYPelsPerMeter;
6385  DWORD biClrUsed;
6386  DWORD biClrImportant;
6387 }
6388 
6389 alias BITMAPINFOHEADER* LPBITMAPINFOHEADER;
6390 alias BITMAPINFOHEADER TBITMAPINFOHEADER;
6391 alias BITMAPINFOHEADER* PBITMAPINFOHEADER;
6392 
6393 struct RGBQUAD
6394 {
6395  ubyte rgbBlue;
6396  ubyte rgbGreen;
6397  ubyte rgbRed;
6398  ubyte rgbReserved;
6399 }
6400 
6401 alias RGBQUAD TAGRGBQUAD;
6402 alias RGBQUAD TRGBQUAD;
6403 alias RGBQUAD* PRGBQUAD;
6404 
6405 struct BITMAPINFO
6406 {
6407  BITMAPINFOHEADER bmiHeader;
6408  RGBQUAD[1 + 0] bmiColors;
6409 }
6410 
6411 alias BITMAPINFO* LPBITMAPINFO;
6412 alias BITMAPINFO* PBITMAPINFO;
6413 alias BITMAPINFO TBITMAPINFO;
6414 alias int FXPT2DOT30;
6415 alias FXPT2DOT30* LPFXPT2DOT30;
6416 alias FXPT2DOT30 TPFXPT2DOT30;
6417 alias FXPT2DOT30* PPFXPT2DOT30;
6418 
6419 struct CIEXYZ
6420 {
6421  FXPT2DOT30 ciexyzX;
6422  FXPT2DOT30 ciexyzY;
6423  FXPT2DOT30 ciexyzZ;
6424 }
6425 
6426 alias CIEXYZ TAGCIEXYZ;
6427 alias CIEXYZ* LPCIEXYZ;
6428 alias CIEXYZ TPCIEXYZ;
6429 alias CIEXYZ* PCIEXYZ;
6430 
6431 struct CIEXYZTRIPLE
6432 {
6433  CIEXYZ ciexyzRed;
6434  CIEXYZ ciexyzGreen;
6435  CIEXYZ ciexyzBlue;
6436 }
6437 
6438 alias CIEXYZTRIPLE TAGCIEXYZTRIPLE;
6439 alias CIEXYZTRIPLE* LPCIEXYZTRIPLE;
6440 alias CIEXYZTRIPLE TCIEXYZTRIPLE;
6441 alias CIEXYZTRIPLE* PCIEXYZTRIPLE;
6442 
6443 struct BITMAPV4HEADER
6444 {
6445  DWORD bV4Size;
6446  LONG bV4Width;
6447  LONG bV4Height;
6448  ushort bV4Planes;
6449  ushort bV4BitCount;
6450  DWORD bV4V4Compression;
6451  DWORD bV4SizeImage;
6452  LONG bV4XPelsPerMeter;
6453  LONG bV4YPelsPerMeter;
6454  DWORD bV4ClrUsed;
6455  DWORD bV4ClrImportant;
6456  DWORD bV4RedMask;
6457  DWORD bV4GreenMask;
6458  DWORD bV4BlueMask;
6459  DWORD bV4AlphaMask;
6460  DWORD bV4CSType;
6461  CIEXYZTRIPLE bV4Endpoints;
6462  DWORD bV4GammaRed;
6463  DWORD bV4GammaGreen;
6464  DWORD bV4GammaBlue;
6465 }
6466 
6467 alias BITMAPV4HEADER* LPBITMAPV4HEADER;
6468 alias BITMAPV4HEADER TBITMAPV4HEADER;
6469 alias BITMAPV4HEADER* PBITMAPV4HEADER;
6470 
6471 align(1) struct BITMAPFILEHEADER
6472 {
6473  ushort bfType;
6474  DWORD bfSize;
6475  ushort bfReserved1;
6476  ushort bfReserved2;
6477  DWORD bfOffBits;
6478 }
6479 
6480 
6481 struct BLOB
6482 {
6483  ULONG cbSize;
6484  ubyte* pBlobData;
6485 }
6486 
6487 alias BLOB _BLOB;
6488 alias BLOB TBLOB;
6489 alias BLOB* PBLOB;
6490 
6491 align(1) struct SHITEMID
6492 {
6493  USHORT cb;
6494  ubyte[1 + 0] abID;
6495 }
6496 
6497 alias SHITEMID* LPSHITEMID;
6498 alias SHITEMID* LPCSHITEMID;
6499 alias SHITEMID _SHITEMID;
6500 alias SHITEMID TSHITEMID;
6501 alias SHITEMID* PSHITEMID;
6502 
6503 struct ITEMIDLIST
6504 {
6505  SHITEMID mkid;
6506 }
6507 
6508 alias ITEMIDLIST* LPITEMIDLIST;
6509 alias ITEMIDLIST* LPCITEMIDLIST;
6510 alias ITEMIDLIST _ITEMIDLIST;
6511 alias ITEMIDLIST TITEMIDLIST;
6512 alias ITEMIDLIST* PITEMIDLIST;
6513 
6514 struct BROWSEINFOA
6515 {
6516  HWND hwndOwner;
6517  LPCITEMIDLIST pidlRoot;
6518  LPSTR pszDisplayName;
6519  LPCSTR lpszTitle;
6520  UINT ulFlags;
6521  BFFCALLBACK lpfn;
6522  LPARAM lParam;
6523  int iImage;
6524 }
6525 struct BROWSEINFOW
6526 {
6527  HWND hwndOwner;
6528  LPCITEMIDLIST pidlRoot;
6529  LPWSTR pszDisplayName;
6530  LPCWSTR lpszTitle;
6531  UINT ulFlags;
6532  BFFCALLBACK lpfn;
6533  LPARAM lParam;
6534  int iImage;
6535 }
6536 version( Win32SansUnicode )
6537 {
6538  alias BROWSEINFOA BROWSEINFO;
6539 }
6540 else
6541 {
6542  alias BROWSEINFOW BROWSEINFO;
6543 }
6544 alias BROWSEINFO* PBROWSEINFO, LPBROWSEINFO;
6545 
6546 struct FILETIME
6547 {
6548  DWORD dwLowDateTime;
6549  DWORD dwHighDateTime;
6550 }
6551 
6552 alias FILETIME* LPFILETIME;
6553 alias FILETIME _FILETIME;
6554 alias FILETIME TFILETIME;
6555 alias FILETIME* PFILETIME;
6556 
6557 struct BY_HANDLE_FILE_INFORMATION
6558 {
6559  DWORD dwFileAttributes;
6560  FILETIME ftCreationTime;
6561  FILETIME ftLastAccessTime;
6562  FILETIME ftLastWriteTime;
6563  DWORD dwVolumeSerialNumber;
6564  DWORD nFileSizeHigh;
6565  DWORD nFileSizeLow;
6566  DWORD nNumberOfLinks;
6567  DWORD nFileIndexHigh;
6568  DWORD nFileIndexLow;
6569 }
6570 
6571 alias BY_HANDLE_FILE_INFORMATION* LPBY_HANDLE_FILE_INFORMATION;
6572 alias BY_HANDLE_FILE_INFORMATION _BY_HANDLE_FILE_INFORMATION;
6573 alias BY_HANDLE_FILE_INFORMATION TBYHANDLEFILEINFORMATION;
6574 alias BY_HANDLE_FILE_INFORMATION* PBYHANDLEFILEINFORMATION;
6575 
6576 struct FIXED
6577 {
6578  ushort fract;
6579  short value;
6580 }
6581 
6582 alias FIXED _FIXED;
6583 alias FIXED TFIXED;
6584 alias FIXED* PFIXED;
6585 
6586 struct POINT
6587 {
6588  LONG x;
6589  LONG y;
6590 }
6591 
6592 alias POINT* LPPOINT;
6593 alias POINT TAGPOINT;
6594 alias POINT TPOINT;
6595 alias POINT* PPOINT;
6596 
6597 struct POINTFX
6598 {
6599  FIXED x;
6600  FIXED y;
6601 }
6602 
6603 alias POINTFX TAGPOINTFX;
6604 alias POINTFX TPOINTFX;
6605 alias POINTFX* PPOINTFX;
6606 
6607 struct POINTL
6608 {
6609  LONG x;
6610  LONG y;
6611 }
6612 
6613 alias POINTL _POINTL;
6614 alias POINTL TPOINTL;
6615 alias POINTL* PPOINTL;
6616 
6617 struct TSMALLPOINT
6618 {
6619  byte X, Y;
6620 }
6621 
6622 
6623 struct POINTS
6624 {
6625  SHORT x;
6626  SHORT y;
6627 }
6628 
6629 alias POINTS TAGPOINTS;
6630 alias POINTS TPOINTS;
6631 alias POINTS* PPOINTS;
6632 
6633 struct CANDIDATEFORM
6634 {
6635  DWORD dwIndex;
6636  DWORD dwStyle;
6637  POINT ptCurrentPos;
6638  RECT rcArea;
6639 }
6640 
6641 alias CANDIDATEFORM* LPCANDIDATEFORM;
6642 alias CANDIDATEFORM _TAGCANDIDATEFORM;
6643 alias CANDIDATEFORM TCANDIDATEFORM;
6644 alias CANDIDATEFORM* PCANDIDATEFORM;
6645 
6646 struct CANDIDATELIST
6647 {
6648  DWORD dwSize;
6649  DWORD dwStyle;
6650  DWORD dwCount;
6651  DWORD dwSelection;
6652  DWORD dwPageStart;
6653  DWORD dwPageSize;
6654  DWORD[1 + 0] dwOffset;
6655 }
6656 
6657 alias CANDIDATELIST* LPCANDIDATELIST;
6658 alias CANDIDATELIST _TAGCANDIDATELIST;
6659 alias CANDIDATELIST TCANDIDATELIST;
6660 alias CANDIDATELIST* PCANDIDATELIST;
6661 
6662 struct CREATESTRUCT
6663 {
6664  LPVOID lpCreateParams;
6665  HINST hInstance;
6666  HMENU hMenu;
6667  HWND hwndParent;
6668  int cy;
6669  int cx;
6670  int y;
6671  int x;
6672  LONG style;
6673  LPCTSTR lpszName;
6674  LPCTSTR lpszClass;
6675  DWORD dwExStyle;
6676 }
6677 
6678 alias CREATESTRUCT* LPCREATESTRUCT;
6679 alias CREATESTRUCT TAGCREATESTRUCT;
6680 alias CREATESTRUCT TCREATESTRUCT;
6681 alias CREATESTRUCT* PCREATESTRUCT;
6682 
6683 struct CBT_CREATEWND
6684 {
6685  LPCREATESTRUCT lpcs;
6686  HWND hwndInsertAfter;
6687 }
6688 
6689 alias CBT_CREATEWND TAGCBT_CREATEWND;
6690 alias CBT_CREATEWND TCBT_CREATEWND;
6691 alias CBT_CREATEWND* PCBT_CREATEWND;
6692 
6693 struct CBTACTIVATESTRUCT
6694 {
6695  WINBOOL fMouse;
6696  HWND hWndActive;
6697 }
6698 
6699 alias CBTACTIVATESTRUCT TAGCBTACTIVATESTRUCT;
6700 alias CBTACTIVATESTRUCT TCBTACTIVATESTRUCT;
6701 alias CBTACTIVATESTRUCT* PCBTACTIVATESTRUCT;
6702 
6703 struct CHAR_INFO
6704 {
6705 
6706  union
6707  {
6708   struct
6709   {
6710    WCHAR UnicodeChar;
6711    ushort Attributes;
6712   }
6713   struct
6714   {
6715    char AsciiChar;
6716   }
6717  }
6718 }
6719 
6720 alias CHAR_INFO _CHAR_INFO;
6721 alias CHAR_INFO TCHAR_INFO;
6722 alias CHAR_INFO* PCHAR_INFO;
6723 
6724 struct CHARFORMAT
6725 {
6726  UINT cbSize;
6727  DWORD dwMask;
6728  DWORD dwEffects;
6729  LONG yHeight;
6730  LONG yOffset;
6731  COLORREF crTextColor;
6732  ubyte bCharSet;
6733  ubyte bPitchAndFamily;
6734  TCHAR[1 + LF_FACESIZE-1] szFaceName;
6735 }
6736 
6737 alias CHARFORMAT _CHARFORMAT;
6738 alias CHARFORMAT TCHARFORMAT;
6739 alias CHARFORMAT* PCHARFORMAT;
6740 
6741 struct CHARRANGE
6742 {
6743  LONG cpMin;
6744  LONG cpMax;
6745 }
6746 
6747 alias CHARRANGE _CHARRANGE;
6748 alias CHARRANGE TCHARRANGE;
6749 alias CHARRANGE* PCHARRANGE;
6750 
6751 struct CHARSET
6752 {
6753  DWORD[1 + 2] aflBlock;
6754  DWORD flLang;
6755 }
6756 
6757 alias CHARSET TAGCHARSET;
6758 alias CHARSET TCHARSET;
6759 alias CHARSET* PCHARSET;
6760 
6761 struct FONTSIGNATURE
6762 {
6763  DWORD[1 + 3] fsUsb;
6764  DWORD[1 + 1] fsCsb;
6765 }
6766 
6767 alias FONTSIGNATURE* LPFONTSIGNATURE;
6768 alias FONTSIGNATURE TAGFONTSIGNATURE;
6769 alias FONTSIGNATURE TFONTSIGNATURE;
6770 alias FONTSIGNATURE* PFONTSIGNATURE;
6771 
6772 struct CHARSETINFO
6773 {
6774  UINT ciCharset;
6775  UINT ciACP;
6776  FONTSIGNATURE fs;
6777 }
6778 
6779 alias CHARSETINFO* LPCHARSETINFO;
6780 alias CHARSETINFO TCHARSETINFO;
6781 alias CHARSETINFO* PCHARSETINFO;
6782 
6783 struct CHOOSECOLORA 
6784 {
6785  DWORD  lStructSize;
6786  HWND   hwndOwner;
6787  HWND   hInstance;
6788  COLORREF  rgbResult;
6789  COLORREF* lpCustColors;
6790  DWORD  Flags;
6791  LPARAM    lCustData;
6792  LPCCHOOKPROC lpfnHook;
6793  LPCSTR   lpTemplateName;
6794 }
6795 alias CHOOSECOLORA* PCHOOSECOLORA, LPCHOOSECOLORA;
6796 struct CHOOSECOLORW 
6797 {
6798  DWORD  lStructSize;
6799  HWND   hwndOwner;
6800  HWND   hInstance;
6801  COLORREF  rgbResult;
6802  COLORREF* lpCustColors;
6803  DWORD  Flags;
6804  LPARAM    lCustData;
6805  LPCCHOOKPROC lpfnHook;
6806  LPCWSTR   lpTemplateName;
6807 }
6808 alias CHOOSECOLORW* PCHOOSECOLORW, LPCHOOSECOLORW;
6809 version(Win32SansUnicode)
6810 {
6811  alias CHOOSECOLORA CHOOSECOLOR;
6812 }
6813 else
6814 {
6815  alias CHOOSECOLORW CHOOSECOLOR;
6816 }
6817 alias CHOOSECOLOR* PCHOOSECOLOR, LPCHOOSECOLOR;
6818 
6819 struct LOGFONTA
6820 {
6821  LONG lfHeight;
6822  LONG lfWidth;
6823  LONG lfEscapement;
6824  LONG lfOrientation;
6825  LONG lfWeight;
6826  ubyte lfItalic;
6827  ubyte lfUnderline;
6828  ubyte lfStrikeOut;
6829  ubyte lfCharSet;
6830  ubyte lfOutPrecision;
6831  ubyte lfClipPrecision;
6832  ubyte lfQuality;
6833  ubyte lfPitchAndFamily;
6834  ubyte[1 + LF_FACESIZE-1] lfFaceName;
6835 }
6836 
6837 alias LOGFONTA  TLOGFONTA;
6838 alias LOGFONTA* PLOGFONTA;
6839 alias LOGFONTA* LPLOGFONTA;
6840 
6841 struct LOGFONTW
6842 {
6843  LONG lfHeight;
6844  LONG lfWidth;
6845  LONG lfEscapement;
6846  LONG lfOrientation;
6847  LONG lfWeight;
6848  ubyte lfItalic;
6849  ubyte lfUnderline;
6850  ubyte lfStrikeOut;
6851  ubyte lfCharSet;
6852  ubyte lfOutPrecision;
6853  ubyte lfClipPrecision;
6854  ubyte lfQuality;
6855  ubyte lfPitchAndFamily;
6856  WCHAR[LF_FACESIZE] lfFaceName = 0;
6857 };
6858 
6859 alias LOGFONTW  TLOGFONTW;
6860 alias LOGFONTW* LPLOGFONTW;
6861 alias LOGFONTW* PLOGFONTW;
6862 
6863 version( Win32SansUnicode ){
6864  alias LOGFONTA  LOGFONT;
6865  alias LOGFONTA  TLOGFONT;
6866  alias LOGFONTA* PLOGFONT;
6867  alias LOGFONTA* LPLOGFONT;
6868 }
6869 else{
6870  alias LOGFONTW  LOGFONT;
6871  alias LOGFONTW  TLOGFONT;
6872  alias LOGFONTW* PLOGFONT;
6873  alias LOGFONTW* LPLOGFONT;
6874 }
6875 
6876 struct CHOOSEFONTA 
6877 {
6878  DWORD  lStructSize;
6879  HWND   hwndOwner;
6880  HDC    hDC;
6881  LPLOGFONTA   lpLogFont;
6882  INT    iPointSize;
6883  DWORD  Flags;
6884  DWORD  rgbColors;
6885  LPARAM    lCustData;
6886  LPCFHOOKPROC lpfnHook;
6887  LPCSTR    lpTemplateName;
6888  HINSTANCE hInstance;
6889  LPSTR  lpszStyle;
6890  WORD   nFontType;
6891  WORD   ___MISSING_ALIGNMENT__;
6892  INT    nSizeMin;
6893  INT    nSizeMax;
6894 }
6895 alias CHOOSEFONTA* PCHOOSEFONTA;
6896 alias CHOOSEFONTA* LPCHOOSEFONTA;
6897 
6898 struct CHOOSEFONTW 
6899 {
6900  DWORD  lStructSize;
6901  HWND   hwndOwner;
6902  HDC    hDC;
6903  LOGFONTW* lpLogFont;
6904  INT    iPointSize;
6905  DWORD  Flags;
6906  DWORD  rgbColors;
6907  LPARAM    lCustData;
6908  LPCFHOOKPROC lpfnHook;
6909  LPCWSTR   lpTemplateName;
6910  HINSTANCE hInstance;
6911  LPWSTR    lpszStyle;
6912  WORD   nFontType;
6913  WORD   ___MISSING_ALIGNMENT__;
6914  INT    nSizeMin;
6915  INT    nSizeMax;
6916 }
6917 alias CHOOSEFONTW* PCHOOSEFONTW;
6918 alias CHOOSEFONTW* LPCHOOSEFONTW;
6919 
6920 version(Win32SansUnicode){
6921  alias CHOOSEFONTA CHOOSEFONT;
6922 }else{
6923  alias CHOOSEFONTW CHOOSEFONT;
6924 }
6925 
6926 alias CHOOSEFONT* LPCHOOSEFONT;
6927 alias CHOOSEFONT* PCHOOSEFONT;
6928 alias CHOOSEFONT TCHOOSEFONT;
6929 
6930 struct CIDA
6931 {
6932  UINT cidl;
6933  UINT[1 + 0] aoffset;
6934 }
6935 
6936 alias CIDA* LPIDA;
6937 alias CIDA _IDA;
6938 alias CIDA TIDA;
6939 alias CIDA* PIDA;
6940 
6941 struct CLIENTCREATESTRUCT
6942 {
6943  HANDLE hWindowMenu;
6944  UINT idFirstChild;
6945 }
6946 
6947 alias CLIENTCREATESTRUCT* LPCLIENTCREATESTRUCT;
6948 alias CLIENTCREATESTRUCT TAGCLIENTCREATESTRUCT;
6949 alias CLIENTCREATESTRUCT TCLIENTCREATESTRUCT;
6950 alias CLIENTCREATESTRUCT* PCLIENTCREATESTRUCT;
6951 
6952 struct CMINVOKECOMMANDINFO
6953 {
6954  DWORD cbSize;
6955  DWORD fMask;
6956  HWND hwnd;
6957  LPCSTR lpVerb;
6958  LPCSTR lpParameters;
6959  LPCSTR lpDirectory;
6960  int nShow;
6961  DWORD dwHotKey;
6962  HANDLE hIcon;
6963 }
6964 
6965 alias CMINVOKECOMMANDINFO* LPCMINVOKECOMMANDINFO;
6966 alias CMINVOKECOMMANDINFO _CMINVOKECOMMANDINFO;
6967 alias CMINVOKECOMMANDINFO TCMINVOKECOMMANDINFO;
6968 alias CMINVOKECOMMANDINFO* PCMINVOKECOMMANDINFO;
6969 
6970 struct COLORADJUSTMENT
6971 {
6972  ushort caSize;
6973  ushort caFlags;
6974  ushort caIlluminantIndex;
6975  ushort caRedGamma;
6976  ushort caGreenGamma;
6977  ushort caBlueGamma;
6978  ushort caReferenceBlack;
6979  ushort caReferenceWhite;
6980  SHORT caContrast;
6981  SHORT caBrightness;
6982  SHORT caColorfulness;
6983  SHORT caRedGreenTint;
6984 }
6985 
6986 alias COLORADJUSTMENT* LPCOLORADJUSTMENT;
6987 alias COLORADJUSTMENT TAGCOLORADJUSTMENT;
6988 alias COLORADJUSTMENT TCOLORADJUSTMENT;
6989 alias COLORADJUSTMENT* PCOLORADJUSTMENT;
6990 
6991 struct COLORMAP
6992 {
6993  COLORREF from;
6994  COLORREF _to;
6995 }
6996 
6997 alias COLORMAP* LPCOLORMAP;
6998 alias COLORMAP _COLORMAP;
6999 alias COLORMAP TCOLORMAP;
7000 alias COLORMAP* PCOLORMAP;
7001 
7002 struct DCB
7003 {
7004  DWORD DCBlength;
7005  DWORD BaudRate;
7006  int flag0;
7007  ushort wReserved;
7008  ushort XonLim;
7009  ushort XoffLim;
7010  ubyte ByteSize;
7011  ubyte Parity;
7012  ubyte StopBits;
7013  char XonChar;
7014  char XoffChar;
7015  char ErrorChar;
7016  char EofChar;
7017  char EvtChar;
7018  ushort wReserved1;
7019 }
7020 
7021 alias DCB* LPDCB;
7022 alias DCB _DCB;
7023 alias DCB TDCB;
7024 alias DCB* PDCB;
7025 
7026 enum : DWORD 
7027 {
7028  bm_DCB_fBinary = (0x1),
7029  bp_DCB_fBinary = (0),
7030  bm_DCB_fParity = (0x2),
7031  bp_DCB_fParity = (1),
7032  bm_DCB_fOutxCtsFlow = (0x4),
7033  bp_DCB_fOutxCtsFlow = (2),
7034  bm_DCB_fOutxDsrFlow = (0x8),
7035  bp_DCB_fOutxDsrFlow = (3),
7036  bm_DCB_fDtrControl = (0x30),
7037  bp_DCB_fDtrControl = (4),
7038  bm_DCB_fDsrSensitivity = (0x40),
7039  bp_DCB_fDsrSensitivity = (6),
7040  bm_DCB_fTXContinueOnXoff = (0x80),
7041  bp_DCB_fTXContinueOnXoff = (7),
7042  bm_DCB_fOutX = (0x100),
7043  bp_DCB_fOutX = (8),
7044  bm_DCB_fInX = (0x200),
7045  bp_DCB_fInX = (9),
7046  bm_DCB_fErrorChar = (0x400),
7047  bp_DCB_fErrorChar = (10),
7048  bm_DCB_fNull = (0x800),
7049  bp_DCB_fNull = (11),
7050  bm_DCB_fRtsControl = (0x3000),
7051  bp_DCB_fRtsControl = (12),
7052  bm_DCB_fAbortOnError = (0x4000),
7053  bp_DCB_fAbortOnError = (14),
7054  bm_DCB_fDummy2 = (0xFFFF8000),
7055  bp_DCB_fDummy2 = (15),
7056 }
7057 
7058 struct COMMCONFIG
7059 {
7060  DWORD dwSize;
7061  ushort wVersion;
7062  ushort wReserved;
7063  DCB dcb;
7064  DWORD dwProviderSubType;
7065  DWORD dwProviderOffset;
7066  DWORD dwProviderSize;
7067  WCHAR[1 + 0] wcProviderData;
7068 }
7069 
7070 alias COMMCONFIG* LPCOMMCONFIG;
7071 alias COMMCONFIG _COMM_CONFIG;
7072 alias COMMCONFIG TCOMMCONFIG;
7073 alias COMMCONFIG* PCOMMCONFIG;
7074 
7075 struct COMMPROP
7076 {
7077  ushort wPacketLength;
7078  ushort wPacketVersion;
7079  DWORD dwServiceMask;
7080  DWORD dwReserved1;
7081  DWORD dwMaxTxQueue;
7082  DWORD dwMaxRxQueue;
7083  DWORD dwMaxBaud;
7084  DWORD dwProvSubType;
7085  DWORD dwProvCapabilities;
7086  DWORD dwSettableParams;
7087  DWORD dwSettableBaud;
7088  ushort wSettableData;
7089  ushort wSettableStopParity;
7090  DWORD dwCurrentTxQueue;
7091  DWORD dwCurrentRxQueue;
7092  DWORD dwProvSpec1;
7093  DWORD dwProvSpec2;
7094  WCHAR[1 + 0] wcProvChar;
7095 }
7096 
7097 alias COMMPROP* LPCOMMPROP;
7098 alias COMMPROP _COMMPROP;
7099 alias COMMPROP TCOMMPROP;
7100 alias COMMPROP* PCOMMPROP;
7101 
7102 struct COMMTIMEOUTS
7103 {
7104  DWORD ReadIntervalTimeout;
7105  DWORD ReadTotalTimeoutMultiplier;
7106  DWORD ReadTotalTimeoutConstant;
7107  DWORD WriteTotalTimeoutMultiplier;
7108  DWORD WriteTotalTimeoutConstant;
7109 }
7110 
7111 alias COMMTIMEOUTS* LPCOMMTIMEOUTS;
7112 alias COMMTIMEOUTS _COMMTIMEOUTS;
7113 alias COMMTIMEOUTS TCOMMTIMEOUTS;
7114 alias COMMTIMEOUTS* PCOMMTIMEOUTS;
7115 
7116 struct COMPAREITEMSTRUCT
7117 {
7118  UINT CtlType;
7119  UINT CtlID;
7120  HWND hwndItem;
7121  UINT itemID1;
7122  ULONG_PTR itemData1;
7123  UINT itemID2;
7124  ULONG_PTR itemData2;
7125  DWORD dwLocaleId;
7126 }
7127 
7128 alias COMPAREITEMSTRUCT TAGCOMPAREITEMSTRUCT;
7129 alias COMPAREITEMSTRUCT TCOMPAREITEMSTRUCT;
7130 alias COMPAREITEMSTRUCT* PCOMPAREITEMSTRUCT;
7131 
7132 struct COMPCOLOR
7133 {
7134  COLORREF crText;
7135  COLORREF crBackground;
7136  DWORD dwEffects;
7137 }
7138 
7139 alias COMPCOLOR TCOMPCOLOR;
7140 alias COMPCOLOR* PCOMPCOLOR;
7141 
7142 struct COMPOSITIONFORM
7143 {
7144  DWORD dwStyle;
7145  POINT ptCurrentPos;
7146  RECT rcArea;
7147 }
7148 
7149 alias COMPOSITIONFORM* LPCOMPOSITIONFORM;
7150 alias COMPOSITIONFORM _TAGCOMPOSITIONFORM;
7151 alias COMPOSITIONFORM TCOMPOSITIONFORM;
7152 alias COMPOSITIONFORM* PCOMPOSITIONFORM;
7153 
7154 struct COMSTAT
7155 {
7156  int flag0;
7157  DWORD cbInQue;
7158  DWORD cbOutQue;
7159 }
7160 
7161 alias COMSTAT* LPCOMSTAT;
7162 alias COMSTAT _COMSTAT;
7163 alias COMSTAT TCOMSTAT;
7164 alias COMSTAT* PCOMSTAT;
7165 enum : DWORD {
7166  bm_COMSTAT_fCtsHold = (0x1),
7167  bp_COMSTAT_fCtsHold = (0),
7168  bm_COMSTAT_fDsrHold = (0x2),
7169  bp_COMSTAT_fDsrHold = (1),
7170  bm_COMSTAT_fRlsdHold = (0x4),
7171  bp_COMSTAT_fRlsdHold = (2),
7172  bm_COMSTAT_fXoffHold = (0x8),
7173  bp_COMSTAT_fXoffHold = (3),
7174  bm_COMSTAT_fXoffSent = (0x10),
7175  bp_COMSTAT_fXoffSent = (4),
7176  bm_COMSTAT_fEof = (0x20),
7177  bp_COMSTAT_fEof = (5),
7178  bm_COMSTAT_fTxim = (0x40),
7179  bp_COMSTAT_fTxim = (6),
7180  bm_COMSTAT_fReserved = (0xFFFFFF80),
7181  bp_COMSTAT_fReserved = (7),
7182 }
7183 struct CONSOLE_CURSOR_INFO
7184 {
7185  DWORD dwSize;
7186  WINBOOL bVisible;
7187 }
7188 
7189 alias CONSOLE_CURSOR_INFO* PCONSOLE_CURSOR_INFO;
7190 alias CONSOLE_CURSOR_INFO _CONSOLE_CURSOR_INFO;
7191 alias CONSOLE_CURSOR_INFO TCONSOLECURSORINFO;
7192 alias CONSOLE_CURSOR_INFO* PCONSOLECURSORINFO;
7193 alias CONSOLE_CURSOR_INFO TCURSORINFO;
7194 
7195 struct COORD
7196 {
7197  SHORT X;
7198  SHORT Y;
7199 }
7200 
7201 alias COORD _COORD;
7202 alias COORD TCOORD;
7203 alias COORD* PCOORD;
7204 
7205 struct SMALL_RECT
7206 {
7207  SHORT Left;
7208  SHORT Top;
7209  SHORT Right;
7210  SHORT Bottom;
7211 }
7212 
7213 alias SMALL_RECT _SMALL_RECT;
7214 alias SMALL_RECT TSMALL_RECT;
7215 alias SMALL_RECT* PSMALL_RECT;
7216 
7217 align(1) struct CONSOLE_SCREEN_BUFFER_INFO
7218 {
7219  COORD dwSize;
7220  COORD dwCursorPosition;
7221  ushort wAttributes;
7222  SMALL_RECT srWindow;
7223  COORD dwMaximumWindowSize;
7224 }
7225 
7226 alias CONSOLE_SCREEN_BUFFER_INFO* PCONSOLE_SCREEN_BUFFER_INFO;
7227 alias CONSOLE_SCREEN_BUFFER_INFO _CONSOLE_SCREEN_BUFFER_INFO;
7228 alias CONSOLE_SCREEN_BUFFER_INFO TCONSOLESCREENBUFFERINFO;
7229 alias CONSOLE_SCREEN_BUFFER_INFO* PCONSOLESCREENBUFFERINFO;
7230 
7231 struct FLOATING_SAVE_AREA
7232 {
7233  DWORD ControlWord;
7234  DWORD StatusWord;
7235  DWORD TagWord;
7236  DWORD ErrorOffset;
7237  DWORD ErrorSelector;
7238  DWORD DataOffset;
7239  DWORD DataSelector;
7240  ubyte[1 + 79] RegisterArea;
7241  DWORD Cr0NpxState;
7242 }
7243 
7244 alias FLOATING_SAVE_AREA _FLOATING_SAVE_AREA;
7245 alias FLOATING_SAVE_AREA TFLOATINGSAVEAREA;
7246 alias FLOATING_SAVE_AREA* PFLOATINGSAVEAREA;
7247 
7248 enum : DWORD
7249 {
7250 //
7251 // The following flags control the contents of the CONTEXT structure.
7252 //
7253  CONTEXT_i386 = 0x00010000, // this assumes that i386 and
7254  CONTEXT_i486 = 0x00010000, // i486 have identical context records
7255 
7256  CONTEXT_CONTROL =   (CONTEXT_i386 | 0x00000001), // SS:SP, CS:IP, FLAGS, BP
7257  CONTEXT_INTEGER =   (CONTEXT_i386 | 0x00000002), // AX, BX, CX, DX, SI, DI
7258  CONTEXT_SEGMENTS =  (CONTEXT_i386 | 0x00000004), // DS, ES, FS, GS
7259  CONTEXT_FLOATING_POINT =  (CONTEXT_i386 | 0x00000008), // 387 state
7260  CONTEXT_DEBUG_REGISTERS = (CONTEXT_i386 | 0x00000010), // DB 0-3,6,7
7261 
7262  CONTEXT_FULL = (CONTEXT_CONTROL | CONTEXT_INTEGER | CONTEXT_SEGMENTS),
7263 }
7264 
7265 struct CONTEXT
7266 {
7267  DWORD ContextFlags;
7268  DWORD Dr0;
7269  DWORD Dr1;
7270  DWORD Dr2;
7271  DWORD Dr3;
7272  DWORD Dr6;
7273  DWORD Dr7;
7274  FLOATING_SAVE_AREA FloatSave;
7275  DWORD SegGs;
7276  DWORD SegFs;
7277  DWORD SegEs;
7278  DWORD SegDs;
7279  DWORD Edi;
7280  DWORD Esi;
7281  DWORD Ebx;
7282  DWORD Edx;
7283  DWORD Ecx;
7284  DWORD Eax;
7285  DWORD Ebp;
7286  DWORD Eip;
7287  DWORD SegCs;
7288  DWORD EFlags;
7289  DWORD Esp;
7290  DWORD SegSs;
7291 }
7292 
7293 alias CONTEXT* LPCONTEXT;
7294 alias CONTEXT _CONTEXT;
7295 alias CONTEXT TCONTEXT;
7296 alias CONTEXT* PCONTEXT;
7297 
7298 struct LIST_ENTRY
7299 {
7300  _LIST_ENTRY* Flink;
7301  _LIST_ENTRY* Blink;
7302 }
7303 
7304 alias LIST_ENTRY _LIST_ENTRY;
7305 alias LIST_ENTRY TLISTENTRY;
7306 alias LIST_ENTRY* PLISTENTRY;
7307 
7308 align(1) struct CRITICAL_SECTION_DEBUG
7309 {
7310  WORD _Type;
7311  WORD CreatorBackTraceIndex;
7312  _CRITICAL_SECTION* CriticalSection;
7313  LIST_ENTRY ProcessLocksList;
7314  DWORD EntryCount;
7315  DWORD ContentionCount;
7316  DWORD Flags;
7317  WORD   CreatorBackTraceIndexHigh;
7318  WORD   SpareWORD  ;
7319 }
7320 
7321 alias CRITICAL_SECTION_DEBUG* LPCRITICAL_SECTION_DEBUG;
7322 alias CRITICAL_SECTION_DEBUG* PCRITICAL_SECTION_DEBUG;
7323 alias CRITICAL_SECTION_DEBUG _CRITICAL_SECTION_DEBUG;
7324 alias CRITICAL_SECTION_DEBUG TCRITICALSECTIONDEBUG;
7325 alias CRITICAL_SECTION_DEBUG* PCRITICALSECTIONDEBUG;
7326 
7327 align(1) struct CRITICAL_SECTION
7328 {
7329  PCRITICAL_SECTION_DEBUG DebugInfo;
7330  LONG LockCount;
7331  LONG RecursionCount;
7332  HANDLE OwningThread;
7333  HANDLE LockSemaphore;
7334  DWORD Reserved;
7335 }
7336 
7337 alias CRITICAL_SECTION* LPCRITICAL_SECTION;
7338 alias CRITICAL_SECTION* PCRITICAL_SECTION;
7339 alias CRITICAL_SECTION _CRITICAL_SECTION;
7340 alias CRITICAL_SECTION TCRITICALSECTION;
7341 alias CRITICAL_SECTION* PCRITICALSECTION;
7342 
7343 alias ubyte SECURITY_CONTEXT_TRACKING_MODE;
7344 struct SECURITY_QUALITY_OF_SERVICE
7345 {
7346  DWORD Length;
7347  SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
7348  SECURITY_CONTEXT_TRACKING_MODE ContextTrackingMode;
7349  BOOLEAN EffectiveOnly;
7350 }
7351 
7352 alias SECURITY_QUALITY_OF_SERVICE* PSECURITY_QUALITY_OF_SERVICE;
7353 alias SECURITY_QUALITY_OF_SERVICE _SECURITY_QUALITY_OF_SERVICE;
7354 alias SECURITY_QUALITY_OF_SERVICE TSECURITYQUALITYOFSERVICE;
7355 alias SECURITY_QUALITY_OF_SERVICE* PSECURITYQUALITYOFSERVICE;
7356 
7357 struct CONVCONTEXT
7358 {
7359  UINT cb;
7360  UINT wFlags;
7361  UINT wCountryID;
7362  int iCodePage;
7363  DWORD dwLangID;
7364  DWORD dwSecurity;
7365  SECURITY_QUALITY_OF_SERVICE qos;
7366 }
7367 
7368 alias CONVCONTEXT TAGCONVCONTEXT;
7369 alias CONVCONTEXT TCONVCONTEXT;
7370 alias CONVCONTEXT* PCONVCONTEXT;
7371 
7372 struct CONVINFO
7373 {
7374  DWORD cb;
7375  DWORD hUser;
7376  HCONV hConvPartner;
7377  HSZ hszSvcPartner;
7378  HSZ hszServiceReq;
7379  HSZ hszTopic;
7380  HSZ hszItem;
7381  UINT wFmt;
7382  UINT wType;
7383  UINT wStatus;
7384  UINT wConvst;
7385  UINT wLastError;
7386  HCONVLIST hConvList;
7387  CONVCONTEXT ConvCtxt;
7388  HWND _hwnd;
7389  HWND hwndPartner;
7390 }
7391 
7392 alias CONVINFO TAGCONVINFO;
7393 alias CONVINFO TCONVINFO;
7394 alias CONVINFO* PCONVINFO;
7395 
7396 struct COPYDATASTRUCT
7397 {
7398  DWORD dwData;
7399  DWORD cbData;
7400  PVOID lpData;
7401 }
7402 
7403 alias COPYDATASTRUCT TAGCOPYDATASTRUCT;
7404 alias COPYDATASTRUCT TCOPYDATASTRUCT;
7405 alias COPYDATASTRUCT* PCOPYDATASTRUCT;
7406 
7407 struct CPINFO
7408 {
7409  UINT MaxCharSize;
7410  ubyte[1 + MAX_DEFAULTCHAR-1] DefaultChar;
7411  ubyte[1 + MAX_LEADBYTES-1] LeadByte;
7412 }
7413 
7414 alias CPINFO* LPCPINFO;
7415 alias CPINFO _CPINFO;
7416 alias CPINFO TCPINFO;
7417 alias CPINFO* PCPINFO;
7418 
7419 struct CPLINFO
7420 {
7421  int idIcon;
7422  int idName;
7423  int idInfo;
7424  LONG lData;
7425 }
7426 
7427 alias CPLINFO TAGCPLINFO;
7428 alias CPLINFO TCPLINFO;
7429 alias CPLINFO* PCPLINFO;
7430 
7431 struct CREATE_PROCESS_DEBUG_INFO
7432 {
7433  HANDLE hFile;
7434  HANDLE hProcess;
7435  HANDLE hThread;
7436  LPVOID lpBaseOfImage;
7437  DWORD dwDebugInfoFileOffset;
7438  DWORD nDebugInfoSize;
7439  LPVOID lpThreadLocalBase;
7440  LPTHREAD_START_ROUTINE lpStartAddress;
7441  LPVOID lpImageName;
7442  ushort fUnicode;
7443 }
7444 
7445 alias CREATE_PROCESS_DEBUG_INFO _CREATE_PROCESS_DEBUG_INFO;
7446 alias CREATE_PROCESS_DEBUG_INFO TCREATEPROCESSDEBUGINFO;
7447 alias CREATE_PROCESS_DEBUG_INFO* PCREATEPROCESSDEBUGINFO;
7448 
7449 struct CREATE_THREAD_DEBUG_INFO
7450 {
7451  HANDLE hThread;
7452  LPVOID lpThreadLocalBase;
7453  LPTHREAD_START_ROUTINE lpStartAddress;
7454 }
7455 
7456 alias CREATE_THREAD_DEBUG_INFO _CREATE_THREAD_DEBUG_INFO;
7457 alias CREATE_THREAD_DEBUG_INFO TCREATETHREADDEBUGINFO;
7458 alias CREATE_THREAD_DEBUG_INFO* PCREATETHREADDEBUGINFO;
7459 
7460 struct CURRENCYFMT
7461 {
7462  UINT NumDigits;
7463  UINT LeadingZero;
7464  UINT Grouping;
7465  LPTSTR lpDecimalSep;
7466  LPTSTR lpThousandSep;
7467  UINT NegativeOrder;
7468  UINT PositiveOrder;
7469  LPTSTR lpCurrencySymbol;
7470 }
7471 
7472 alias CURRENCYFMT _CURRENCYFMT;
7473 alias CURRENCYFMT TCURRENCYFMT;
7474 alias CURRENCYFMT* PCURRENCYFMT;
7475 
7476 struct CURSORSHAPE
7477 {
7478  int xHotSpot;
7479  int yHotSpot;
7480  int cx;
7481  int cy;
7482  int cbWidth;
7483  ubyte Planes;
7484  ubyte BitsPixel;
7485 }
7486 
7487 alias CURSORSHAPE* LPCURSORSHAPE;
7488 alias CURSORSHAPE TAGCURSORSHAPE;
7489 alias CURSORSHAPE TCURSORSHAPE;
7490 alias CURSORSHAPE* PCURSORSHAPE;
7491 
7492 struct CWPRETSTRUCT
7493 {
7494  LRESULT lResult;
7495  LPARAM lParam;
7496  WPARAM wParam;
7497  DWORD message;
7498  HWND hwnd;
7499 }
7500 
7501 alias CWPRETSTRUCT TAGCWPRETSTRUCT;
7502 alias CWPRETSTRUCT TCWPRETSTRUCT;
7503 alias CWPRETSTRUCT* PCWPRETSTRUCT;
7504 
7505 struct CWPSTRUCT
7506 {
7507  LPARAM lParam;
7508  WPARAM wParam;
7509  UINT message;
7510  HWND hwnd;
7511 }
7512 
7513 alias CWPSTRUCT TAGCWPSTRUCT;
7514 alias CWPSTRUCT TCWPSTRUCT;
7515 alias CWPSTRUCT* PCWPSTRUCT;
7516 
7517 struct DATATYPES_INFO_1
7518 {
7519  LPTSTR pName;
7520 }
7521 
7522 alias DATATYPES_INFO_1 _DATATYPES_INFO_1;
7523 alias DATATYPES_INFO_1 TDATATYPESINFO1;
7524 alias DATATYPES_INFO_1* PDATATYPESINFO1;
7525 
7526 struct DDEACK
7527 {
7528  ushort flag0;
7529 }
7530 
7531 alias DDEACK TDDEACK;
7532 alias DDEACK* PDDEACK;
7533 enum : DWORD 
7534 {
7535  bm_DDEACK_bAppReturnCode = (0xFF),
7536  bp_DDEACK_bAppReturnCode = (0),
7537  bm_DDEACK_reserved = (0x3F00),
7538  bp_DDEACK_reserved = (8),
7539  bm_DDEACK_fBusy = (0x4000),
7540  bp_DDEACK_fBusy = (14),
7541  bm_DDEACK_fAck = (0x8000),
7542  bp_DDEACK_fAck = (15),
7543 }
7544 
7545 struct DDEADVISE
7546 {
7547  ushort flag0;
7548  short cfFormat;
7549 }
7550 
7551 alias DDEADVISE TDDEADVISE;
7552 alias DDEADVISE* PDDEADVISE;
7553 enum : DWORD {
7554  bm_DDEADVISE_reserved = (0x3FFF),
7555  bp_DDEADVISE_reserved = (0),
7556  bm_DDEADVISE_fDeferUpd = (0x4000),
7557  bp_DDEADVISE_fDeferUpd = (14),
7558  bm_DDEADVISE_fAckReq = (0x8000),
7559  bp_DDEADVISE_fAckReq = (15),
7560 }
7561 
7562 struct DDEDATA
7563 {
7564  ushort flag0;
7565  short  cfFormat;
7566  ubyte[1 + 0] Value;
7567 }
7568 
7569 alias DDEDATA* PDDEDATA;
7570 enum : DWORD 
7571 {
7572  bm_DDEDATA_unused = (0xFFF),
7573  bp_DDEDATA_unused = (0),
7574  bm_DDEDATA_fResponse = (0x1000),
7575  bp_DDEDATA_fResponse = (12),
7576  bm_DDEDATA_fRelease = (0x2000),
7577  bp_DDEDATA_fRelease = (13),
7578  bm_DDEDATA_reserved = (0x4000),
7579  bp_DDEDATA_reserved = (14),
7580  bm_DDEDATA_fAckReq = (0x8000),
7581  bp_DDEDATA_fAckReq = (15),
7582 }
7583 
7584 struct DDELN
7585 {
7586  ushort flag0;
7587  short cfFormat;
7588 }
7589 
7590 alias DDELN TDDELN;
7591 alias DDELN* PDDELN;
7592 enum : DWORD 
7593 {
7594  bm_DDELN_unused = (0x1FFF),
7595  bp_DDELN_unused = (0),
7596  bm_DDELN_fRelease = (0x2000),
7597  bp_DDELN_fRelease = (13),
7598  bm_DDELN_fDeferUpd = (0x4000),
7599  bp_DDELN_fDeferUpd = (14),
7600  bm_DDELN_fAckReq = (0x8000),
7601  bp_DDELN_fAckReq = (15),
7602 }
7603 
7604 struct DDEML_MSG_HOOK_DATA
7605 {
7606  UINT uiLo;
7607  UINT uiHi;
7608  DWORD cbData;
7609  DWORD[1 + 7] Data;
7610 }
7611 
7612 alias DDEML_MSG_HOOK_DATA TAGDDEML_MSG_HOOK_DATA;
7613 alias DDEML_MSG_HOOK_DATA TDDEMLMSGHOOKDATA;
7614 alias DDEML_MSG_HOOK_DATA* PDDEMLMSGHOOKDATA;
7615 
7616 struct DDEPOKE
7617 {
7618  ushort flag0;
7619  short cfFormat;
7620  ubyte[1 + 0] Value;
7621 }
7622 
7623 alias DDEPOKE TDDEPOKE;
7624 alias DDEPOKE* PDDEPOKE;
7625 enum : DWORD 
7626 {
7627  bm_DDEPOKE_unused = (0x1FFF),
7628  bp_DDEPOKE_unused = (0),
7629  bm_DDEPOKE_fRelease = (0x2000),
7630  bp_DDEPOKE_fRelease = (13),
7631  bm_DDEPOKE_fReserved = (0xC000),
7632  bp_DDEPOKE_fReserved = (14),
7633 }
7634 struct DDEUP
7635 {
7636  ushort flag0;
7637  short cfFormat;
7638  ubyte[1 + 0] rgb;
7639 }
7640 
7641 alias DDEUP TDDEUP;
7642 alias DDEUP* PDDEUP;
7643 
7644 enum : DWORD 
7645 {
7646  bm_DDEUP_unused = (0xFFF),
7647  bp_DDEUP_unused = (0),
7648  bm_DDEUP_fAck = (0x1000),
7649  bp_DDEUP_fAck = (12),
7650  bm_DDEUP_fRelease = (0x2000),
7651  bp_DDEUP_fRelease = (13),
7652  bm_DDEUP_fReserved = (0x4000),
7653  bp_DDEUP_fReserved = (14),
7654  bm_DDEUP_fAckReq = (0x8000),
7655  bp_DDEUP_fAckReq = (15),
7656 }
7657 
7658 struct EXCEPTION_RECORD
7659 {
7660  DWORD ExceptionCode;
7661  DWORD ExceptionFlags;
7662  _EXCEPTION_RECORD* ExceptionRecord;
7663  PVOID ExceptionAddress;
7664  DWORD NumberParameters;
7665  DWORD[1 + EXCEPTION_MAXIMUM_PARAMETERS-1] ExceptionInformation;
7666 }
7667 
7668 alias EXCEPTION_RECORD* PEXCEPTION_RECORD;
7669 alias EXCEPTION_RECORD _EXCEPTION_RECORD;
7670 alias EXCEPTION_RECORD TEXCEPTIONRECORD;
7671 alias EXCEPTION_RECORD* PEXCEPTIONRECORD;
7672 
7673 struct EXCEPTION_DEBUG_INFO
7674 {
7675  EXCEPTION_RECORD ExceptionRecord;
7676  DWORD dwFirstChance;
7677 }
7678 
7679 alias EXCEPTION_DEBUG_INFO* PEXCEPTION_DEBUG_INFO;
7680 alias EXCEPTION_DEBUG_INFO _EXCEPTION_DEBUG_INFO;
7681 alias EXCEPTION_DEBUG_INFO TEXCEPTIONDEBUGINFO;
7682 alias EXCEPTION_DEBUG_INFO* PEXCEPTIONDEBUGINFO;
7683 
7684 struct EXIT_PROCESS_DEBUG_INFO
7685 {
7686  DWORD dwExitCode;
7687 }
7688 
7689 alias EXIT_PROCESS_DEBUG_INFO _EXIT_PROCESS_DEBUG_INFO;
7690 alias EXIT_PROCESS_DEBUG_INFO TEXITPROCESSDEBUGINFO;
7691 alias EXIT_PROCESS_DEBUG_INFO* PEXITPROCESSDEBUGINFO;
7692 
7693 struct EXIT_THREAD_DEBUG_INFO
7694 {
7695  DWORD dwExitCode;
7696 }
7697 
7698 alias EXIT_THREAD_DEBUG_INFO _EXIT_THREAD_DEBUG_INFO;
7699 alias EXIT_THREAD_DEBUG_INFO TEXITTHREADDEBUGINFO;
7700 alias EXIT_THREAD_DEBUG_INFO* PEXITTHREADDEBUGINFO;
7701 
7702 struct LOAD_DLL_DEBUG_INFO
7703 {
7704  HANDLE hFile;
7705  LPVOID lpBaseOfDll;
7706  DWORD dwDebugInfoFileOffset;
7707  DWORD nDebugInfoSize;
7708  LPVOID lpImageName;
7709  ushort fUnicode;
7710 }
7711 
7712 alias LOAD_DLL_DEBUG_INFO _LOAD_DLL_DEBUG_INFO;
7713 alias LOAD_DLL_DEBUG_INFO TLOADDLLDEBUGINFO;
7714 alias LOAD_DLL_DEBUG_INFO* PLOADDLLDEBUGINFO;
7715 
7716 struct UNLOAD_DLL_DEBUG_INFO
7717 {
7718  LPVOID lpBaseOfDll;
7719 }
7720 
7721 alias UNLOAD_DLL_DEBUG_INFO _UNLOAD_DLL_DEBUG_INFO;
7722 alias UNLOAD_DLL_DEBUG_INFO TUNLOADDLLDEBUGINFO;
7723 alias UNLOAD_DLL_DEBUG_INFO* PUNLOADDLLDEBUGINFO;
7724 
7725 struct OUTPUT_DEBUG_STRING_INFO
7726 {
7727  LPSTR lpDebugStringData;
7728  ushort fUnicode;
7729  ushort nDebugStringLength;
7730 }
7731 
7732 alias OUTPUT_DEBUG_STRING_INFO _OUTPUT_DEBUG_STRING_INFO;
7733 alias OUTPUT_DEBUG_STRING_INFO TOUTPUTDEBUGSTRINGINFO;
7734 alias OUTPUT_DEBUG_STRING_INFO* POUTPUTDEBUGSTRINGINFO;
7735 
7736 struct RIP_INFO
7737 {
7738  DWORD dwError;
7739  DWORD dwType;
7740 }
7741 
7742 alias RIP_INFO _RIP_INFO;
7743 alias RIP_INFO TRIPINFO;
7744 alias RIP_INFO* PRIPINFO;
7745 
7746 struct DEBUG_EVENT
7747 {
7748  DWORD dwDebugEventCode;
7749  DWORD dwProcessId;
7750  DWORD dwThreadId;
7751 
7752  union
7753  {
7754   struct
7755   {
7756    EXCEPTION_DEBUG_INFO Exception;
7757   }
7758   struct
7759   {
7760    CREATE_THREAD_DEBUG_INFO CreateThread;
7761   }
7762   struct
7763   {
7764    CREATE_PROCESS_DEBUG_INFO CreateProcessInfo;
7765   }
7766   struct
7767   {
7768    EXIT_THREAD_DEBUG_INFO ExitThread;
7769   }
7770   struct
7771   {
7772    EXIT_PROCESS_DEBUG_INFO ExitProcess;
7773   }
7774   struct
7775   {
7776    LOAD_DLL_DEBUG_INFO LoadDll;
7777   }
7778   struct
7779   {
7780    UNLOAD_DLL_DEBUG_INFO UnloadDll;
7781   }
7782   struct
7783   {
7784    OUTPUT_DEBUG_STRING_INFO DebugString;
7785   }
7786   struct
7787   {
7788    RIP_INFO RipInfo;
7789   }
7790  }
7791 }
7792 
7793 alias DEBUG_EVENT* LPDEBUG_EVENT;
7794 alias DEBUG_EVENT _DEBUG_EVENT;
7795 alias DEBUG_EVENT TDEBUGEVENT;
7796 alias DEBUG_EVENT* PDEBUGEVENT;
7797 
7798 struct DEBUGHOOKINFO
7799 {
7800  DWORD idThread;
7801  DWORD idThreadInstaller;
7802  LPARAM lParam;
7803  WPARAM wParam;
7804  int code;
7805 }
7806 
7807 alias DEBUGHOOKINFO TAGDEBUGHOOKINFO;
7808 alias DEBUGHOOKINFO TDEBUGHOOKINFO;
7809 alias DEBUGHOOKINFO* PDEBUGHOOKINFO;
7810 
7811 struct DELETEITEMSTRUCT
7812 {
7813  UINT CtlType;
7814  UINT CtlID;
7815  UINT itemID;
7816  HWND hwndItem;
7817  UINT itemData;
7818 }
7819 
7820 alias DELETEITEMSTRUCT TAGDELETEITEMSTRUCT;
7821 alias DELETEITEMSTRUCT TDELETEITEMSTRUCT;
7822 alias DELETEITEMSTRUCT* PDELETEITEMSTRUCT;
7823 
7824 struct DEV_BROADCAST_HDR
7825 {
7826  ULONG dbch_size;
7827  ULONG dbch_devicetype;
7828  ULONG dbch_reserved;
7829 }
7830 
7831 alias DEV_BROADCAST_HDR* PDEV_BROADCAST_HDR;
7832 alias DEV_BROADCAST_HDR _DEV_BROADCAST_HDR;
7833 alias DEV_BROADCAST_HDR TDEVBROADCASTHDR;
7834 alias DEV_BROADCAST_HDR* PDEVBROADCASTHDR;
7835 
7836 struct DEV_BROADCAST_OEM
7837 {
7838  ULONG dbco_size;
7839  ULONG dbco_devicetype;
7840  ULONG dbco_reserved;
7841  ULONG dbco_identifier;
7842  ULONG dbco_suppfunc;
7843 }
7844 
7845 alias DEV_BROADCAST_OEM* PDEV_BROADCAST_OEM;
7846 alias DEV_BROADCAST_OEM _DEV_BROADCAST_OEM;
7847 alias DEV_BROADCAST_OEM TDEVBROADCASTOEM;
7848 alias DEV_BROADCAST_OEM* PDEVBROADCASTOEM;
7849 
7850 struct DEV_BROADCAST_PORT
7851 {
7852  ULONG dbcp_size;
7853  ULONG dbcp_devicetype;
7854  ULONG dbcp_reserved;
7855  char[1 + 0] dbcp_name;
7856 }
7857 
7858 alias DEV_BROADCAST_PORT* PDEV_BROADCAST_PORT;
7859 alias DEV_BROADCAST_PORT _DEV_BROADCAST_PORT;
7860 alias DEV_BROADCAST_PORT TDEVBROADCASTPORT;
7861 alias DEV_BROADCAST_PORT* PDEVBROADCASTPORT;
7862 
7863 struct _DEV_BROADCAST_USERDEFINED
7864 {
7865  _DEV_BROADCAST_HDR dbud_dbh;
7866  char[1 + 0] dbud_szName;
7867  ubyte[1 + 0] dbud_rgbUserDefined;
7868 }
7869 
7870 alias _DEV_BROADCAST_USERDEFINED TDEVBROADCASTUSERDEFINED;
7871 alias _DEV_BROADCAST_USERDEFINED* PDEVBROADCASTUSERDEFINED;
7872 
7873 struct DEV_BROADCAST_VOLUME
7874 {
7875  ULONG dbcv_size;
7876  ULONG dbcv_devicetype;
7877  ULONG dbcv_reserved;
7878  ULONG dbcv_unitmask;
7879  USHORT dbcv_flags;
7880 }
7881 
7882 alias DEV_BROADCAST_VOLUME* PDEV_BROADCAST_VOLUME;
7883 alias DEV_BROADCAST_VOLUME _DEV_BROADCAST_VOLUME;
7884 alias DEV_BROADCAST_VOLUME TDEVBROADCASTVOLUME;
7885 alias DEV_BROADCAST_VOLUME* PDEVBROADCASTVOLUME;
7886 
7887 struct DEVMODE
7888 {
7889  BCHAR[1 + CCHDEVICENAME-1] dmDeviceName;
7890  ushort dmSpecVersion;
7891  ushort dmDriverVersion;
7892  ushort dmSize;
7893  ushort dmDriverExtra;
7894  DWORD dmFields;
7895  int dmOrientation;
7896  int dmPaperSize;
7897  int dmPaperLength;
7898  int dmPaperWidth;
7899  int dmScale;
7900  int dmCopies;
7901  int dmDefaultSource;
7902  int dmPrintQuality;
7903  int dmColor;
7904  int dmDuplex;
7905  int dmYResolution;
7906  int dmTTOption;
7907  int dmCollate;
7908  BCHAR[1 + CCHFORMNAME-1] dmFormName;
7909  ushort dmLogPixels;
7910  DWORD dmBitsPerPel;
7911  DWORD dmPelsWidth;
7912  DWORD dmPelsHeight;
7913  DWORD dmDisplayFlags;
7914  DWORD dmDisplayFrequency;
7915  DWORD dmICMMethod;
7916  DWORD dmICMIntent;
7917  DWORD dmMediaType;
7918  DWORD dmDitherType;
7919  DWORD dmICCManufacturer;
7920  DWORD dmICCModel;
7921 }
7922 
7923 alias DEVMODE* LPDEVMODE;
7924 alias DEVMODE _DEVICEMODE;
7925 alias DEVMODE DEVICEMODE;
7926 alias DEVMODE TDEVICEMODE;
7927 alias DEVMODE TDEVICEMODEA;
7928 alias DEVMODE TDEVMODE;
7929 alias DEVMODE* PDEVMODE;
7930 
7931 struct DEVNAMES
7932 {
7933  ushort wDriverOffset;
7934  ushort wDeviceOffset;
7935  ushort wOutputOffset;
7936  ushort wDefault;
7937 }
7938 
7939 alias DEVNAMES* LPDEVNAMES;
7940 alias DEVNAMES TAGDEVNAMES;
7941 alias DEVNAMES TDEVNAMES;
7942 alias DEVNAMES* PDEVNAMES;
7943 
7944 struct DIBSECTION
7945 {
7946  BITMAP dsBm;
7947  BITMAPINFOHEADER dsBmih;
7948  DWORD[1 + 2] dsBitfields;
7949  HANDLE dshSection;
7950  DWORD dsOffset;
7951 }
7952 
7953 alias DIBSECTION TAGDIBSECTION;
7954 alias DIBSECTION TDIBSECTION;
7955 alias DIBSECTION* PDIBSECTION;
7956 
7957 union LARGE_INTEGER
7958 {
7959  struct
7960  {
7961   DWORD LowPart;
7962   LONG HighPart;
7963  };
7964  struct u
7965  {
7966   DWORD LowPart;
7967   LONG HighPart;
7968  };
7969  LONGLONG QuadPart;
7970 }
7971 
7972 alias LARGE_INTEGER* PLARGE_INTEGER;
7973 alias LARGE_INTEGER _LARGE_INTEGER;
7974 alias LARGE_INTEGER TLARGEINTEGER;
7975 alias LARGE_INTEGER* PLARGEINTEGER;
7976 
7977 struct DISK_GEOMETRY
7978 {
7979  LARGE_INTEGER Cylinders;
7980  MEDIA_TYPE MediaType;
7981  DWORD TracksPerCylinder;
7982  DWORD SectorsPerTrack;
7983  DWORD BytesPerSector;
7984 }
7985 
7986 alias DISK_GEOMETRY _DISK_GEOMETRY;
7987 alias DISK_GEOMETRY TDISKGEOMETRY;
7988 alias DISK_GEOMETRY* PDISKGEOMETRY;
7989 
7990 struct DISK_PERFORMANCE
7991 {
7992  LARGE_INTEGER BytesRead;
7993  LARGE_INTEGER BytesWritten;
7994  LARGE_INTEGER ReadTime;
7995  LARGE_INTEGER WriteTime;
7996  LARGE_INTEGER IdleTime;
7997  DWORD ReadCount;
7998  DWORD WriteCount;
7999  DWORD QueueDepth;
8000  DWORD SplitCount;
8001  LARGE_INTEGER QueryTime;
8002  DWORD StorageDeviceNumber;
8003  WCHAR[8] StorageManagerName;
8004 }
8005 
8006 alias DISK_PERFORMANCE _DISK_PERFORMANCE;
8007 alias DISK_PERFORMANCE TDISKPERFORMANCE;
8008 alias DISK_PERFORMANCE* PDISKPERFORMANCE;
8009 
8010 align(1) struct DLGITEMTEMPLATE
8011 {
8012  DWORD style;
8013  DWORD dwExtendedStyle;
8014  short x;
8015  short y;
8016  short cx;
8017  short cy;
8018  WORD id;
8019 }
8020 
8021 alias DLGITEMTEMPLATE* LPDLGITEMTEMPLATE;
8022 alias DLGITEMTEMPLATE TDLGITEMTEMPLATE;
8023 alias DLGITEMTEMPLATE* PDLGITEMTEMPLATE;
8024 
8025 align(1) struct DLGTEMPLATE
8026 {
8027  DWORD style;
8028  DWORD dwExtendedStyle;
8029  WORD cdit;
8030  short x;
8031  short y;
8032  short cx;
8033  short cy;
8034 }
8035 
8036 alias DLGTEMPLATE* LPDLGTEMPLATE;
8037 alias const(DLGTEMPLATE)* LPCDLGTEMPLATE;
8038 alias DLGTEMPLATE TDLGTEMPLATE;
8039 alias DLGTEMPLATE* PDLGTEMPLATE;
8040 
8041 struct DOC_INFO_1
8042 {
8043  LPTSTR pDocName;
8044  LPTSTR pOutputFile;
8045  LPTSTR pDatatype;
8046 }
8047 
8048 alias DOC_INFO_1 _DOC_INFO_1;
8049 alias DOC_INFO_1 TDOCINFO1;
8050 alias DOC_INFO_1* PDOCINFO1;
8051 
8052 struct DOC_INFO_2
8053 {
8054  LPTSTR pDocName;
8055  LPTSTR pOutputFile;
8056  LPTSTR pDatatype;
8057  DWORD dwMode;
8058  DWORD JobId;
8059 }
8060 
8061 alias DOC_INFO_2 _DOC_INFO_2;
8062 alias DOC_INFO_2 TDOCINFO2;
8063 alias DOC_INFO_2* PDOCINFO2;
8064 
8065 struct DOCINFOA
8066 {
8067  int  cbSize;
8068  LPCSTR   lpszDocName;
8069  LPCSTR   lpszOutput;
8070  LPCSTR   lpszDatatype;
8071  DWORD fwType;
8072 }
8073 alias DOCINFOA TDOCINFOA;
8074 
8075 struct DOCINFOW
8076 {
8077  int  cbSize;
8078  LPCWSTR  lpszDocName;
8079  LPCWSTR  lpszOutput;
8080  LPCWSTR  lpszDatatype;
8081  DWORD fwType;
8082 }
8083 alias DOCINFOW TDOCINFOW;
8084 
8085 version(Win32SansUnicode)
8086 {
8087  alias DOCINFOA DOCINFO;
8088 }
8089 else
8090 {
8091  alias DOCINFOW DOCINFO;
8092 }
8093 alias DOCINFO TDOCINFO;
8094 alias DOCINFO* LPDOCINFO;
8095 alias DOCINFO* PDOCINFO;
8096 
8097 
8098 struct DRAGLISTINFO
8099 {
8100  UINT uNotification;
8101  HWND hWnd;
8102  POINT ptCursor;
8103 }
8104 
8105 alias DRAGLISTINFO* LPDRAGLISTINFO;
8106 alias DRAGLISTINFO TDRAGLISTINFO;
8107 alias DRAGLISTINFO* PDRAGLISTINFO;
8108 
8109 struct DRAWITEMSTRUCT
8110 {
8111  UINT CtlType;
8112  UINT CtlID;
8113  UINT itemID;
8114  UINT itemAction;
8115  UINT itemState;
8116  HWND hwndItem;
8117  HDC hDC;
8118  RECT rcItem;
8119  DWORD itemData;
8120 }
8121 
8122 alias DRAWITEMSTRUCT* LPDRAWITEMSTRUCT;
8123 alias DRAWITEMSTRUCT TAGDRAWITEMSTRUCT;
8124 alias DRAWITEMSTRUCT TDRAWITEMSTRUCT;
8125 alias DRAWITEMSTRUCT* PDRAWITEMSTRUCT;
8126 
8127 struct DRAWTEXTPARAMS
8128 {
8129  UINT cbSize;
8130  int iTabLength;
8131  int iLeftMargin;
8132  int iRightMargin;
8133  UINT uiLengthDrawn;
8134 }
8135 
8136 alias DRAWTEXTPARAMS* LPDRAWTEXTPARAMS;
8137 alias DRAWTEXTPARAMS TDRAWTEXTPARAMS;
8138 alias DRAWTEXTPARAMS* PDRAWTEXTPARAMS;
8139 
8140 struct PARTITION_INFORMATION
8141 {
8142  ubyte PartitionType;
8143  ubyte BootIndicator;
8144  ubyte RecognizedPartition;
8145  ubyte RewritePartition;
8146  LARGE_INTEGER StartingOffset;
8147  LARGE_INTEGER PartitionLength;
8148  LARGE_INTEGER HiddenSectors;
8149 }
8150 
8151 alias PARTITION_INFORMATION _PARTITION_INFORMATION;
8152 alias PARTITION_INFORMATION TPARTITIONINFORMATION;
8153 alias PARTITION_INFORMATION* PPARTITIONINFORMATION;
8154 
8155 struct DRIVE_LAYOUT_INFORMATION
8156 {
8157  DWORD PartitionCount;
8158  DWORD Signature;
8159  PARTITION_INFORMATION[1 + 0] PartitionEntry;
8160 }
8161 
8162 alias DRIVE_LAYOUT_INFORMATION _DRIVE_LAYOUT_INFORMATION;
8163 alias DRIVE_LAYOUT_INFORMATION TDRIVELAYOUTINFORMATION;
8164 alias DRIVE_LAYOUT_INFORMATION* PDRIVELAYOUTINFORMATION;
8165 
8166 struct DRIVER_INFO_1
8167 {
8168  LPTSTR pName;
8169 }
8170 
8171 alias DRIVER_INFO_1 _DRIVER_INFO_1;
8172 alias DRIVER_INFO_1 TDRIVERINFO1;
8173 alias DRIVER_INFO_1* PDRIVERINFO1;
8174 
8175 struct DRIVER_INFO_2
8176 {
8177  DWORD cVersion;
8178  LPTSTR pName;
8179  LPTSTR pEnvironment;
8180  LPTSTR pDriverPath;
8181  LPTSTR pDataFile;
8182  LPTSTR pConfigFile;
8183 }
8184 
8185 alias DRIVER_INFO_2 _DRIVER_INFO_2;
8186 alias DRIVER_INFO_2 TDRIVERINFO2;
8187 alias DRIVER_INFO_2* PDRIVERINFO2;
8188 
8189 struct DRIVER_INFO_3
8190 {
8191  DWORD cVersion;
8192  LPTSTR pName;
8193  LPTSTR pEnvironment;
8194  LPTSTR pDriverPath;
8195  LPTSTR pDataFile;
8196  LPTSTR pConfigFile;
8197  LPTSTR pHelpFile;
8198  LPTSTR pDependentFiles;
8199  LPTSTR pMonitorName;
8200  LPTSTR pDefaultDataType;
8201 }
8202 
8203 alias DRIVER_INFO_3 _DRIVER_INFO_3;
8204 alias DRIVER_INFO_3 TDRIVERINFO3;
8205 alias DRIVER_INFO_3* PDRIVERINFO3;
8206 
8207 struct EDITSTREAM
8208 {
8209  DWORD dwCookie;
8210  DWORD dwError;
8211  EDITSTREAMCALLBACK pfnCallback;
8212 }
8213 
8214 alias EDITSTREAM _EDITSTREAM;
8215 alias EDITSTREAM TEDITSTREAM;
8216 alias EDITSTREAM* PEDITSTREAM;
8217 
8218 struct EMR
8219 {
8220  DWORD iType;
8221  DWORD nSize;
8222 }
8223 
8224 alias EMR TAGEMR;
8225 alias EMR TEMR;
8226 alias EMR* PEMR;
8227 
8228 struct EMRANGLEARC
8229 {
8230  EMR emr;
8231  POINTL ptlCenter;
8232  DWORD nRadius;
8233  FLOAT eStartAngle;
8234  FLOAT eSweepAngle;
8235 }
8236 
8237 alias EMRANGLEARC TAGEMRANGLEARC;
8238 alias EMRANGLEARC TEMRANGLEARC;
8239 alias EMRANGLEARC* PEMRANGLEARC;
8240 
8241 struct EMRARC
8242 {
8243  EMR emr;
8244  RECTL rclBox;
8245  POINTL ptlStart;
8246  POINTL ptlEnd;
8247 }
8248 
8249 alias EMRARC TAGEMRARC;
8250 alias EMRARC TEMRARC;
8251 alias EMRARC* PEMRARC;
8252 alias EMRARC EMRARCTO;
8253 alias EMRARC TEMRARCTO;
8254 alias EMRARC* PEMRARCTO;
8255 alias EMRARC EMRCHORD;
8256 alias EMRARC TEMRCHORD;
8257 alias EMRARC* PEMRCHORD;
8258 alias EMRARC EMRPIE;
8259 alias EMRARC TEMRPIE;
8260 alias EMRARC* PEMRPIE;
8261 
8262 struct XFORM
8263 {
8264  FLOAT eM11;
8265  FLOAT eM12;
8266  FLOAT eM21;
8267  FLOAT eM22;
8268  FLOAT eDx;
8269  FLOAT eDy;
8270 }
8271 
8272 alias XFORM* LPXFORM;
8273 alias XFORM _XFORM;
8274 alias XFORM TXFORM;
8275 alias XFORM* PXFORM;
8276 
8277 struct EMRBITBLT
8278 {
8279  EMR emr;
8280  RECTL rclBounds;
8281  LONG xDest;
8282  LONG yDest;
8283  LONG cxDest;
8284  LONG cyDest;
8285  DWORD dwRop;
8286  LONG xSrc;
8287  LONG ySrc;
8288  XFORM xformSrc;
8289  COLORREF crBkColorSrc;
8290  DWORD iUsageSrc;
8291  DWORD offBmiSrc;
8292  DWORD cbBmiSrc;
8293  DWORD offBitsSrc;
8294  DWORD cbBitsSrc;
8295 }
8296 
8297 alias EMRBITBLT TAGEMRBITBLT;
8298 alias EMRBITBLT TEMRBITBLT;
8299 alias EMRBITBLT* PEMRBITBLT;
8300 
8301 struct LOGBRUSH
8302 {
8303  UINT lbStyle;
8304  COLORREF lbColor;
8305  LONG lbHatch;
8306 }
8307 
8308 alias LOGBRUSH TAGLOGBRUSH;
8309 alias LOGBRUSH TLOGBRUSH;
8310 alias LOGBRUSH* PLOGBRUSH;
8311 
8312 struct EMRCREATEBRUSHINDIRECT
8313 {
8314  EMR emr;
8315  DWORD ihBrush;
8316  LOGBRUSH lb;
8317 }
8318 
8319 alias EMRCREATEBRUSHINDIRECT TAGEMRCREATEBRUSHINDIRECT;
8320 alias EMRCREATEBRUSHINDIRECT TEMRCREATEBRUSHINDIRECT;
8321 alias EMRCREATEBRUSHINDIRECT* PEMRCREATEBRUSHINDIRECT;
8322 alias LONG LCSCSTYPE;
8323 alias LONG LCSGAMUTMATCH;
8324 
8325 struct LOGCOLORSPACEA
8326 {
8327  DWORD lcsSignature;
8328  DWORD lcsVersion;
8329  DWORD lcsSize;
8330  LCSCSTYPE lcsCSType;
8331  LCSGAMUTMATCH lcsIntent;
8332  CIEXYZTRIPLE lcsEndpoints;
8333  DWORD lcsGammaRed;
8334  DWORD lcsGammaGreen;
8335  DWORD lcsGammaBlue;
8336  CHAR[1 + MAX_PATH-1] lcsFilename;
8337 }
8338 struct LOGCOLORSPACEW
8339 {
8340  DWORD lcsSignature;
8341  DWORD lcsVersion;
8342  DWORD lcsSize;
8343  LCSCSTYPE lcsCSType;
8344  LCSGAMUTMATCH lcsIntent;
8345  CIEXYZTRIPLE lcsEndpoints;
8346  DWORD lcsGammaRed;
8347  DWORD lcsGammaGreen;
8348  DWORD lcsGammaBlue;
8349  WCHAR[1 + MAX_PATH-1] lcsFilename;
8350 }
8351 version(Win32SansUnicode) {
8352  alias LOGCOLORSPACEA LOGCOLORSPACE;
8353 }
8354 else {
8355  alias LOGCOLORSPACEW LOGCOLORSPACE;
8356 }
8357 
8358 alias LOGCOLORSPACE* LPLOGCOLORSPACE;
8359 alias LOGCOLORSPACE TAGLOGCOLORSPACE;
8360 alias LOGCOLORSPACE TLOGCOLORSPACE;
8361 alias LOGCOLORSPACE TLOGCOLORSPACEA;
8362 alias LOGCOLORSPACE* PLOGCOLORSPACE;
8363 
8364 struct EMRCREATECOLORSPACE 
8365 {
8366  EMR   emr;
8367  DWORD    ihCS;
8368  LOGCOLORSPACEA lcs;
8369 }
8370 
8371 alias EMRCREATECOLORSPACE TAGEMRCREATECOLORSPACE;
8372 alias EMRCREATECOLORSPACE TEMRCREATECOLORSPACE;
8373 alias EMRCREATECOLORSPACE* PEMRCREATECOLORSPACE;
8374 
8375 struct EMRCREATEDIBPATTERNBRUSHPT
8376 {
8377  EMR emr;
8378  DWORD ihBrush;
8379  DWORD iUsage;
8380  DWORD offBmi;
8381  DWORD cbBmi;
8382  DWORD offBits;
8383  DWORD cbBits;
8384 }
8385 
8386 alias EMRCREATEDIBPATTERNBRUSHPT TAGEMRCREATEDIBPATTERNBRUSHPT;
8387 alias EMRCREATEDIBPATTERNBRUSHPT TEMRCREATEDIBPATTERNBRUSHPT;
8388 alias EMRCREATEDIBPATTERNBRUSHPT PEMRCREATEDIBPATTERNBRUSHPT;
8389 
8390 struct EMRCREATEMONOBRUSH
8391 {
8392  EMR emr;
8393  DWORD ihBrush;
8394  DWORD iUsage;
8395  DWORD offBmi;
8396  DWORD cbBmi;
8397  DWORD offBits;
8398  DWORD cbBits;
8399 }
8400 
8401 alias EMRCREATEMONOBRUSH TAGEMRCREATEMONOBRUSH;
8402 alias EMRCREATEMONOBRUSH TEMRCREATEMONOBRUSH;
8403 alias EMRCREATEMONOBRUSH* PEMRCREATEMONOBRUSH;
8404 
8405 struct PALETTEENTRY
8406 {
8407  ubyte peRed;
8408  ubyte peGreen;
8409  ubyte peBlue;
8410  ubyte peFlags;
8411 }
8412 
8413 alias PALETTEENTRY* LPPALETTEENTRY;
8414 alias PALETTEENTRY TAGPALETTEENTRY;
8415 alias PALETTEENTRY TPALETTEENTRY;
8416 alias PALETTEENTRY* PPALETTEENTRY;
8417 
8418 struct LOGPALETTE
8419 {
8420  ushort palVersion;
8421  ushort palNumEntries;
8422  PALETTEENTRY[1 + 0] palPalEntry;
8423 }
8424 
8425 alias LOGPALETTE* LPLOGPALETTE;
8426 alias LOGPALETTE TAGLOGPALETTE;
8427 alias LOGPALETTE TLOGPALETTE;
8428 alias LOGPALETTE* PLOGPALETTE;
8429 
8430 struct EMRCREATEPALETTE
8431 {
8432  EMR emr;
8433  DWORD ihPal;
8434  LOGPALETTE lgpl;
8435 }
8436 
8437 alias EMRCREATEPALETTE TAGEMRCREATEPALETTE;
8438 alias EMRCREATEPALETTE TEMRCREATEPALETTE;
8439 alias EMRCREATEPALETTE* PEMRCREATEPALETTE;
8440 
8441 struct LOGPEN
8442 {
8443  UINT lopnStyle;
8444  POINT lopnWidth;
8445  COLORREF lopnColor;
8446 }
8447 
8448 alias LOGPEN TAGLOGPEN;
8449 alias LOGPEN TLOGPEN;
8450 alias LOGPEN* PLOGPEN;
8451 
8452 struct EMRCREATEPEN
8453 {
8454  EMR emr;
8455  DWORD ihPen;
8456  LOGPEN lopn;
8457 }
8458 
8459 alias EMRCREATEPEN TAGEMRCREATEPEN;
8460 alias EMRCREATEPEN TEMRCREATEPEN;
8461 alias EMRCREATEPEN* PEMRCREATEPEN;
8462 
8463 struct EMRELLIPSE
8464 {
8465  EMR emr;
8466  RECTL rclBox;
8467 }
8468 
8469 alias EMRELLIPSE TAGEMRELLIPSE;
8470 alias EMRELLIPSE TEMRELLIPSE;
8471 alias EMRELLIPSE* PEMRELLIPSE;
8472 alias EMRELLIPSE EMRRECTANGLE;
8473 alias EMRELLIPSE TEMRRECTANGLE;
8474 alias EMRELLIPSE* PEMRRECTANGLE;
8475 
8476 struct EMREOF
8477 {
8478  EMR emr;
8479  DWORD nPalEntries;
8480  DWORD offPalEntries;
8481  DWORD nSizeLast;
8482 }
8483 
8484 alias EMREOF TAGEMREOF;
8485 alias EMREOF TEMREOF;
8486 alias EMREOF* PEMREOF;
8487 
8488 struct EMREXCLUDECLIPRECT
8489 {
8490  EMR emr;
8491  RECTL rclClip;
8492 }
8493 
8494 alias EMREXCLUDECLIPRECT TAGEMREXCLUDECLIPRECT;
8495 alias EMREXCLUDECLIPRECT TEMREXCLUDECLIPRECT;
8496 alias EMREXCLUDECLIPRECT* PEMREXCLUDECLIPRECT;
8497 alias EMREXCLUDECLIPRECT EMRINTERSECTCLIPRECT;
8498 alias EMREXCLUDECLIPRECT TEMRINTERSECTCLIPRECT;
8499 alias EMREXCLUDECLIPRECT* PEMRINTERSECTCLIPRECT;
8500 
8501 struct PANOSE
8502 {
8503  ubyte bFamilyType;
8504  ubyte bSerifStyle;
8505  ubyte bWeight;
8506  ubyte bProportion;
8507  ubyte bContrast;
8508  ubyte bStrokeVariation;
8509  ubyte bArmStyle;
8510  ubyte bLetterform;
8511  ubyte bMidline;
8512  ubyte bXHeight;
8513 }
8514 
8515 alias PANOSE TAGPANOSE;
8516 alias PANOSE TPANOSE;
8517 alias PANOSE* PPANOSE;
8518 
8519 struct EXTLOGFONT
8520 {
8521  LOGFONT elfLogFont;
8522  TCHAR[1 + LF_FULLFACESIZE-1] elfFullName = 0;
8523  TCHAR[1 + LF_FACESIZE-1] elfStyle = 0;
8524  DWORD elfVersion;
8525  DWORD elfStyleSize;
8526  DWORD elfMatch;
8527  DWORD elfReserved;
8528  ubyte[1 + ELF_VENDOR_SIZE-1] elfVendorId;
8529  DWORD elfCulture;
8530  PANOSE elfPanose;
8531 }
8532 
8533 alias EXTLOGFONT TAGEXTLOGFONT;
8534 alias EXTLOGFONT TEXTLOGFONT;
8535 alias EXTLOGFONT* PEXTLOGFONT;
8536 
8537 struct EMREXTCREATEFONTINDIRECTW
8538 {
8539  EMR emr;
8540  DWORD ihFont;
8541  EXTLOGFONT elfw;
8542 }
8543 
8544 alias EMREXTCREATEFONTINDIRECTW TAGEMREXTCREATEFONTINDIRECTW;
8545 alias EMREXTCREATEFONTINDIRECTW TEMREXTCREATEFONTINDIRECTW;
8546 alias EMREXTCREATEFONTINDIRECTW* PEMREXTCREATEFONTINDIRECTW;
8547 
8548 struct EXTLOGPEN
8549 {
8550  UINT elpPenStyle;
8551  UINT elpWidth;
8552  UINT elpBrushStyle;
8553  COLORREF elpColor;
8554  LONG elpHatch;
8555  DWORD elpNumEntries;
8556  DWORD[1 + 0] elpStyleEntry;
8557 }
8558 
8559 alias EXTLOGPEN TAGEXTLOGPEN;
8560 alias EXTLOGPEN TEXTLOGPEN;
8561 alias EXTLOGPEN* PEXTLOGPEN;
8562 
8563 struct EMREXTCREATEPEN
8564 {
8565  EMR emr;
8566  DWORD ihPen;
8567  DWORD offBmi;
8568  DWORD cbBmi;
8569  DWORD offBits;
8570  DWORD cbBits;
8571  EXTLOGPEN elp;
8572 }
8573 
8574 alias EMREXTCREATEPEN TAGEMREXTCREATEPEN;
8575 alias EMREXTCREATEPEN TEMREXTCREATEPEN;
8576 alias EMREXTCREATEPEN* PEMREXTCREATEPEN;
8577 
8578 struct EMREXTFLOODFILL
8579 {
8580  EMR emr;
8581  POINTL ptlStart;
8582  COLORREF crColor;
8583  DWORD iMode;
8584 }
8585 
8586 alias EMREXTFLOODFILL TAGEMREXTFLOODFILL;
8587 alias EMREXTFLOODFILL TEMREXTFLOODFILL;
8588 alias EMREXTFLOODFILL* PEMREXTFLOODFILL;
8589 
8590 struct EMREXTSELECTCLIPRGN
8591 {
8592  EMR emr;
8593  DWORD cbRgnData;
8594  DWORD iMode;
8595  ubyte[1 + 0] RgnData;
8596 }
8597 
8598 alias EMREXTSELECTCLIPRGN TAGEMREXTSELECTCLIPRGN;
8599 alias EMREXTSELECTCLIPRGN TEMREXTSELECTCLIPRGN;
8600 alias EMREXTSELECTCLIPRGN* PEMREXTSELECTCLIPRGN;
8601 
8602 struct EMRTEXT
8603 {
8604  POINTL ptlReference;
8605  DWORD nChars;
8606  DWORD offString;
8607  DWORD fOptions;
8608  RECTL rcl;
8609  DWORD offDx;
8610 }
8611 
8612 alias EMRTEXT TAGEMRTEXT;
8613 alias EMRTEXT TEMRTEXT;
8614 alias EMRTEXT* PEMRTEXT;
8615 
8616 struct EMREXTTEXTOUTA
8617 {
8618  EMR emr;
8619  RECTL rclBounds;
8620  DWORD iGraphicsMode;
8621  FLOAT exScale;
8622  FLOAT eyScale;
8623  EMRTEXT emrtext;
8624 }
8625 
8626 alias EMREXTTEXTOUTA TAGEMREXTTEXTOUTA;
8627 alias EMREXTTEXTOUTA TEMREXTTEXTOUTA;
8628 alias EMREXTTEXTOUTA* PEMREXTTEXTOUTA;
8629 alias EMREXTTEXTOUTA EMREXTTEXTOUTW;
8630 alias EMREXTTEXTOUTA TEMREXTTEXTOUTW;
8631 alias EMREXTTEXTOUTA* PEMREXTTEXTOUTW;
8632 
8633 struct EMRFILLPATH
8634 {
8635  EMR emr;
8636  RECTL rclBounds;
8637 }
8638 
8639 alias EMRFILLPATH TAGEMRFILLPATH;
8640 alias EMRFILLPATH TEMRFILLPATH;
8641 alias EMRFILLPATH* PEMRFILLPATH;
8642 alias EMRFILLPATH EMRSTROKEANDFILLPATH;
8643 alias EMRFILLPATH TEMRSTROKEANDFILLPATH;
8644 alias EMRFILLPATH* PEMRSTROKEANDFILLPATH;
8645 alias EMRFILLPATH EMRSTROKEPATH;
8646 alias EMRFILLPATH TEMRSTROKEPATH;
8647 alias EMRFILLPATH* PEMRSTROKEPATH;
8648 
8649 struct EMRFILLRGN
8650 {
8651  EMR emr;
8652  RECTL rclBounds;
8653  DWORD cbRgnData;
8654  DWORD ihBrush;
8655  ubyte[1 + 0] RgnData;
8656 }
8657 
8658 alias EMRFILLRGN TAGEMRFILLRGN;
8659 alias EMRFILLRGN TEMRFILLRGN;
8660 alias EMRFILLRGN* PEMRFILLRGN;
8661 
8662 struct EMRFORMAT
8663 {
8664  DWORD dSignature;
8665  DWORD nVersion;
8666  DWORD cbData;
8667  DWORD offData;
8668 }
8669 
8670 alias EMRFORMAT TAGEMRFORMAT;
8671 alias EMRFORMAT TEMRFORMAT;
8672 alias EMRFORMAT* PEMRFORMAT;
8673 
8674 struct SIZE
8675 {
8676  LONG cx;
8677  LONG cy;
8678 }
8679 
8680 alias SIZE* LPSIZE;
8681 alias SIZE TAGSIZE;
8682 alias SIZE TSIZE;
8683 alias SIZE* PSIZE;
8684 alias SIZE SIZEL;
8685 alias SIZE TSIZEL;
8686 alias SIZE* PSIZEL;
8687 alias SIZE* LPSIZEL;
8688 
8689 struct EMRFRAMERGN
8690 {
8691  EMR emr;
8692  RECTL rclBounds;
8693  DWORD cbRgnData;
8694  DWORD ihBrush;
8695  SIZEL szlStroke;
8696  ubyte[1 + 0] RgnData;
8697 }
8698 
8699 alias EMRFRAMERGN TAGEMRFRAMERGN;
8700 alias EMRFRAMERGN TEMRFRAMERGN;
8701 alias EMRFRAMERGN* PEMRFRAMERGN;
8702 
8703 struct EMRGDICOMMENT
8704 {
8705  EMR emr;
8706  DWORD cbData;
8707  ubyte[1 + 0] Data;
8708 }
8709 
8710 alias EMRGDICOMMENT TAGEMRGDICOMMENT;
8711 alias EMRGDICOMMENT TEMRGDICOMMENT;
8712 alias EMRGDICOMMENT* PEMRGDICOMMENT;
8713 
8714 struct EMRINVERTRGN
8715 {
8716  EMR emr;
8717  RECTL rclBounds;
8718  DWORD cbRgnData;
8719  ubyte[1 + 0] RgnData;
8720 }
8721 
8722 alias EMRINVERTRGN TAGEMRINVERTRGN;
8723 alias EMRINVERTRGN TEMRINVERTRGN;
8724 alias EMRINVERTRGN* PEMRINVERTRGN;
8725 alias EMRINVERTRGN EMRPAINTRGN;
8726 alias EMRINVERTRGN TEMRPAINTRGN;
8727 alias EMRINVERTRGN* PEMRPAINTRGN;
8728 
8729 struct EMRLINETO
8730 {
8731  EMR emr;
8732  POINTL ptl;
8733 }
8734 
8735 alias EMRLINETO TAGEMRLINETO;
8736 alias EMRLINETO TEMRLINETO;
8737 alias EMRLINETO* PEMRLINETO;
8738 alias EMRLINETO EMRMOVETOEX;
8739 alias EMRLINETO TEMRMOVETOEX;
8740 alias EMRLINETO* PEMRMOVETOEX;
8741 
8742 struct EMRMASKBLT
8743 {
8744  EMR emr;
8745  RECTL rclBounds;
8746  LONG xDest;
8747  LONG yDest;
8748  LONG cxDest;
8749  LONG cyDest;
8750  DWORD dwRop;
8751  LONG xSrc;
8752  LONG ySrc;
8753  XFORM xformSrc;
8754  COLORREF crBkColorSrc;
8755  DWORD iUsageSrc;
8756  DWORD offBmiSrc;
8757  DWORD cbBmiSrc;
8758  DWORD offBitsSrc;
8759  DWORD cbBitsSrc;
8760  LONG xMask;
8761  LONG yMask;
8762  DWORD iUsageMask;
8763  DWORD offBmiMask;
8764  DWORD cbBmiMask;
8765  DWORD offBitsMask;
8766  DWORD cbBitsMask;
8767 }
8768 
8769 alias EMRMASKBLT TAGEMRMASKBLT;
8770 alias EMRMASKBLT TEMRMASKBLT;
8771 alias EMRMASKBLT* PEMRMASKBLT;
8772 
8773 struct EMRMODIFYWORLDTRANSFORM
8774 {
8775  EMR emr;
8776  XFORM xform;
8777  DWORD iMode;
8778 }
8779 
8780 alias EMRMODIFYWORLDTRANSFORM TAGEMRMODIFYWORLDTRANSFORM;
8781 alias EMRMODIFYWORLDTRANSFORM TEMRMODIFYWORLDTRANSFORM;
8782 alias EMRMODIFYWORLDTRANSFORM PEMRMODIFYWORLDTRANSFORM;
8783 
8784 struct EMROFFSETCLIPRGN
8785 {
8786  EMR emr;
8787  POINTL ptlOffset;
8788 }
8789 
8790 alias EMROFFSETCLIPRGN TAGEMROFFSETCLIPRGN;
8791 alias EMROFFSETCLIPRGN TEMROFFSETCLIPRGN;
8792 alias EMROFFSETCLIPRGN* PEMROFFSETCLIPRGN;
8793 
8794 struct EMRPLGBLT
8795 {
8796  EMR emr;
8797  RECTL rclBounds;
8798  POINTL[1 + 2] aptlDest;
8799  LONG xSrc;
8800  LONG ySrc;
8801  LONG cxSrc;
8802  LONG cySrc;
8803  XFORM xformSrc;
8804  COLORREF crBkColorSrc;
8805  DWORD iUsageSrc;
8806  DWORD offBmiSrc;
8807  DWORD cbBmiSrc;
8808  DWORD offBitsSrc;
8809  DWORD cbBitsSrc;
8810  LONG xMask;
8811  LONG yMask;
8812  DWORD iUsageMask;
8813  DWORD offBmiMask;
8814  DWORD cbBmiMask;
8815  DWORD offBitsMask;
8816  DWORD cbBitsMask;
8817 }
8818 
8819 alias EMRPLGBLT TAGEMRPLGBLT;
8820 alias EMRPLGBLT TEMRPLGBLT;
8821 alias EMRPLGBLT* PEMRPLGBLT;
8822 
8823 struct EMRPOLYDRAW
8824 {
8825  EMR emr;
8826  RECTL rclBounds;
8827  DWORD cptl;
8828  POINTL[1 + 0] aptl;
8829  ubyte[1 + 0] abTypes;
8830 }
8831 
8832 alias EMRPOLYDRAW TAGEMRPOLYDRAW;
8833 alias EMRPOLYDRAW TEMRPOLYDRAW;
8834 alias EMRPOLYDRAW* PEMRPOLYDRAW;
8835 
8836 struct EMRPOLYDRAW16
8837 {
8838  EMR emr;
8839  RECTL rclBounds;
8840  DWORD cpts;
8841  POINTS[1 + 0] apts;
8842  ubyte[1 + 0] abTypes;
8843 }
8844 
8845 alias EMRPOLYDRAW16 TAGEMRPOLYDRAW16;
8846 alias EMRPOLYDRAW16 TEMRPOLYDRAW16;
8847 alias EMRPOLYDRAW16* PEMRPOLYDRAW16;
8848 
8849 struct EMRPOLYLINE
8850 {
8851  EMR emr;
8852  RECTL rclBounds;
8853  DWORD cptl;
8854  POINTL[1 + 0] aptl;
8855 }
8856 
8857 alias EMRPOLYLINE TAGEMRPOLYLINE;
8858 alias EMRPOLYLINE TEMRPOLYLINE;
8859 alias EMRPOLYLINE* PEMRPOLYLINE;
8860 alias EMRPOLYLINE EMRPOLYBEZIER;
8861 alias EMRPOLYLINE TEMRPOLYBEZIER;
8862 alias EMRPOLYLINE* PEMRPOLYBEZIER;
8863 alias EMRPOLYLINE EMRPOLYGON;
8864 alias EMRPOLYLINE TEMRPOLYGON;
8865 alias EMRPOLYLINE* PEMRPOLYGON;
8866 alias EMRPOLYLINE EMRPOLYBEZIERTO;
8867 alias EMRPOLYLINE TEMRPOLYBEZIERTO;
8868 alias EMRPOLYLINE* PEMRPOLYBEZIERTO;
8869 alias EMRPOLYLINE EMRPOLYLINETO;
8870 alias EMRPOLYLINE TEMRPOLYLINETO;
8871 alias EMRPOLYLINE* PEMRPOLYLINETO;
8872 
8873 struct EMRPOLYLINE16
8874 {
8875  EMR emr;
8876  RECTL rclBounds;
8877  DWORD cpts;
8878  POINTS[1 + 0] apts;
8879 }
8880 
8881 alias EMRPOLYLINE16 TAGEMRPOLYLINE16;
8882 alias EMRPOLYLINE16 TEMRPOLYLINE16;
8883 alias EMRPOLYLINE16* PEMRPOLYLINE16;
8884 alias EMRPOLYLINE16 EMRPOLYBEZIER16;
8885 alias EMRPOLYLINE16 TEMRPOLYBEZIER16;
8886 alias EMRPOLYLINE16* PEMRPOLYBEZIER16;
8887 alias EMRPOLYLINE16 EMRPOLYGON16;
8888 alias EMRPOLYLINE16 TEMRPOLYGON16;
8889 alias EMRPOLYLINE16* PEMRPOLYGON16;
8890 alias EMRPOLYLINE16 EMRPOLYBEZIERTO16;
8891 alias EMRPOLYLINE16 TEMRPOLYBEZIERTO16;
8892 alias EMRPOLYLINE16* PEMRPOLYBEZIERTO16;
8893 alias EMRPOLYLINE16 EMRPOLYLINETO16;
8894 alias EMRPOLYLINE16 TEMRPOLYLINETO16;
8895 alias EMRPOLYLINE16* PEMRPOLYLINETO16;
8896 
8897 struct EMRPOLYPOLYLINE
8898 {
8899  EMR emr;
8900  RECTL rclBounds;
8901  DWORD nPolys;
8902  DWORD cptl;
8903  DWORD[1 + 0] aPolyCounts;
8904  POINTL[1 + 0] aptl;
8905 }
8906 
8907 alias EMRPOLYPOLYLINE TAGEMRPOLYPOLYLINE;
8908 alias EMRPOLYPOLYLINE TEMRPOLYPOLYLINE;
8909 alias EMRPOLYPOLYLINE* PEMRPOLYPOLYLINE;
8910 alias EMRPOLYPOLYLINE EMRPOLYPOLYGON;
8911 alias EMRPOLYPOLYLINE TEMRPOLYPOLYGON;
8912 alias EMRPOLYPOLYLINE* PEMRPOLYPOLYGON;
8913 
8914 struct EMRPOLYPOLYLINE16
8915 {
8916  EMR emr;
8917  RECTL rclBounds;
8918  DWORD nPolys;
8919  DWORD cpts;
8920  DWORD[1 + 0] aPolyCounts;
8921  POINTS[1 + 0] apts;
8922 }
8923 
8924 alias EMRPOLYPOLYLINE16 TAGEMRPOLYPOLYLINE16;
8925 alias EMRPOLYPOLYLINE16 TEMRPOLYPOLYLINE16;
8926 alias EMRPOLYPOLYLINE16* PEMRPOLYPOLYLINE16;
8927 alias EMRPOLYPOLYLINE16 EMRPOLYPOLYGON16;
8928 alias EMRPOLYPOLYLINE16 TEMRPOLYPOLYGON16;
8929 alias EMRPOLYPOLYLINE16* PEMRPOLYPOLYGON16;
8930 
8931 struct EMRPOLYTEXTOUTA
8932 {
8933  EMR emr;
8934  RECTL rclBounds;
8935  DWORD iGraphicsMode;
8936  FLOAT exScale;
8937  FLOAT eyScale;
8938  LONG cStrings;
8939  EMRTEXT[1 + 0] aemrtext;
8940 }
8941 
8942 alias EMRPOLYTEXTOUTA TAGEMRPOLYTEXTOUTA;
8943 alias EMRPOLYTEXTOUTA TEMRPOLYTEXTOUTA;
8944 alias EMRPOLYTEXTOUTA* PEMRPOLYTEXTOUTA;
8945 alias EMRPOLYTEXTOUTA EMRPOLYTEXTOUTW;
8946 alias EMRPOLYTEXTOUTA TEMRPOLYTEXTOUTW;
8947 alias EMRPOLYTEXTOUTA* PEMRPOLYTEXTOUTW;
8948 
8949 struct EMRRESIZEPALETTE
8950 {
8951  EMR emr;
8952  DWORD ihPal;
8953  DWORD cEntries;
8954 }
8955 
8956 alias EMRRESIZEPALETTE TAGEMRRESIZEPALETTE;
8957 alias EMRRESIZEPALETTE TEMRRESIZEPALETTE;
8958 alias EMRRESIZEPALETTE* PEMRRESIZEPALETTE;
8959 
8960 struct EMRRESTOREDC
8961 {
8962  EMR emr;
8963  LONG iRelative;
8964 }
8965 
8966 alias EMRRESTOREDC TAGEMRRESTOREDC;
8967 alias EMRRESTOREDC TEMRRESTOREDC;
8968 alias EMRRESTOREDC* PEMRRESTOREDC;
8969 
8970 struct EMRROUNDRECT
8971 {
8972  EMR emr;
8973  RECTL rclBox;
8974  SIZEL szlCorner;
8975 }
8976 
8977 alias EMRROUNDRECT TAGEMRROUNDRECT;
8978 alias EMRROUNDRECT TEMRROUNDRECT;
8979 alias EMRROUNDRECT* PEMRROUNDRECT;
8980 
8981 struct EMRSCALEVIEWPORTEXTEX
8982 {
8983  EMR emr;
8984  LONG xNum;
8985  LONG xDenom;
8986  LONG yNum;
8987  LONG yDenom;
8988 }
8989 
8990 alias EMRSCALEVIEWPORTEXTEX TAGEMRSCALEVIEWPORTEXTEX;
8991 alias EMRSCALEVIEWPORTEXTEX TEMRSCALEVIEWPORTEXTEX;
8992 alias EMRSCALEVIEWPORTEXTEX* PEMRSCALEVIEWPORTEXTEX;
8993 alias EMRSCALEVIEWPORTEXTEX EMRSCALEWINDOWEXTEX;
8994 alias EMRSCALEVIEWPORTEXTEX TEMRSCALEWINDOWEXTEX;
8995 alias EMRSCALEVIEWPORTEXTEX* PEMRSCALEWINDOWEXTEX;
8996 
8997 struct EMRSELECTCOLORSPACE
8998 {
8999  EMR emr;
9000  DWORD ihCS;
9001 }
9002 
9003 alias EMRSELECTCOLORSPACE TAGEMRSELECTCOLORSPACE;
9004 alias EMRSELECTCOLORSPACE TEMRSELECTCOLORSPACE;
9005 alias EMRSELECTCOLORSPACE* PEMRSELECTCOLORSPACE;
9006 alias EMRSELECTCOLORSPACE EMRDELETECOLORSPACE;
9007 alias EMRSELECTCOLORSPACE TEMRDELETECOLORSPACE;
9008 alias EMRSELECTCOLORSPACE* PEMRDELETECOLORSPACE;
9009 
9010 struct EMRSELECTOBJECT
9011 {
9012  EMR emr;
9013  DWORD ihObject;
9014 }
9015 
9016 alias EMRSELECTOBJECT TAGEMRSELECTOBJECT;
9017 alias EMRSELECTOBJECT TEMRSELECTOBJECT;
9018 alias EMRSELECTOBJECT* PEMRSELECTOBJECT;
9019 alias EMRSELECTOBJECT EMRDELETEOBJECT;
9020 alias EMRSELECTOBJECT TEMRDELETEOBJECT;
9021 alias EMRSELECTOBJECT* PEMRDELETEOBJECT;
9022 
9023 struct EMRSELECTPALETTE
9024 {
9025  EMR emr;
9026  DWORD ihPal;
9027 }
9028 
9029 alias EMRSELECTPALETTE TAGEMRSELECTPALETTE;
9030 alias EMRSELECTPALETTE TEMRSELECTPALETTE;
9031 alias EMRSELECTPALETTE* PEMRSELECTPALETTE;
9032 
9033 struct EMRSETARCDIRECTION
9034 {
9035  EMR emr;
9036  DWORD iArcDirection;
9037 }
9038 
9039 alias EMRSETARCDIRECTION TAGEMRSETARCDIRECTION;
9040 alias EMRSETARCDIRECTION TEMRSETARCDIRECTION;
9041 alias EMRSETARCDIRECTION* PEMRSETARCDIRECTION;
9042 
9043 struct EMRSETBKCOLOR
9044 {
9045  EMR emr;
9046  COLORREF crColor;
9047 }
9048 
9049 alias EMRSETBKCOLOR TAGEMRSETTEXTCOLOR;
9050 alias EMRSETBKCOLOR TEMRSETBKCOLOR;
9051 alias EMRSETBKCOLOR* PEMRSETBKCOLOR;
9052 alias EMRSETBKCOLOR EMRSETTEXTCOLOR;
9053 alias EMRSETBKCOLOR TEMRSETTEXTCOLOR;
9054 alias EMRSETBKCOLOR* PEMRSETTEXTCOLOR;
9055 
9056 struct EMRSETCOLORADJUSTMENT
9057 {
9058  EMR emr;
9059  COLORADJUSTMENT ColorAdjustment;
9060 }
9061 
9062 alias EMRSETCOLORADJUSTMENT TAGEMRSETCOLORADJUSTMENT;
9063 alias EMRSETCOLORADJUSTMENT TEMRSETCOLORADJUSTMENT;
9064 alias EMRSETCOLORADJUSTMENT* PEMRSETCOLORADJUSTMENT;
9065 
9066 struct EMRSETDIBITSTODEVICE
9067 {
9068  EMR emr;
9069  RECTL rclBounds;
9070  LONG xDest;
9071  LONG yDest;
9072  LONG xSrc;
9073  LONG ySrc;
9074  LONG cxSrc;
9075  LONG cySrc;
9076  DWORD offBmiSrc;
9077  DWORD cbBmiSrc;
9078  DWORD offBitsSrc;
9079  DWORD cbBitsSrc;
9080  DWORD iUsageSrc;
9081  DWORD iStartScan;
9082  DWORD cScans;
9083 }
9084 
9085 alias EMRSETDIBITSTODEVICE TAGEMRSETDIBITSTODEVICE;
9086 alias EMRSETDIBITSTODEVICE TEMRSETDIBITSTODEVICE;
9087 alias EMRSETDIBITSTODEVICE* PEMRSETDIBITSTODEVICE;
9088 
9089 struct EMRSETMAPPERFLAGS
9090 {
9091  EMR emr;
9092  DWORD dwFlags;
9093 }
9094 
9095 alias EMRSETMAPPERFLAGS TAGEMRSETMAPPERFLAGS;
9096 alias EMRSETMAPPERFLAGS TEMRSETMAPPERFLAGS;
9097 alias EMRSETMAPPERFLAGS* PEMRSETMAPPERFLAGS;
9098 
9099 struct EMRSETMITERLIMIT
9100 {
9101  EMR emr;
9102  FLOAT eMiterLimit;
9103 }
9104 
9105 alias EMRSETMITERLIMIT TAGEMRSETMITERLIMIT;
9106 alias EMRSETMITERLIMIT TEMRSETMITERLIMIT;
9107 alias EMRSETMITERLIMIT* PEMRSETMITERLIMIT;
9108 
9109 struct EMRSETPALETTEENTRIES
9110 {
9111  EMR emr;
9112  DWORD ihPal;
9113  DWORD iStart;
9114  DWORD cEntries;
9115  PALETTEENTRY[1 + 0] aPalEntries;
9116 }
9117 
9118 alias EMRSETPALETTEENTRIES TAGEMRSETPALETTEENTRIES;
9119 alias EMRSETPALETTEENTRIES TEMRSETPALETTEENTRIES;
9120 alias EMRSETPALETTEENTRIES* PEMRSETPALETTEENTRIES;
9121 
9122 struct EMRSETPIXELV
9123 {
9124  EMR emr;
9125  POINTL ptlPixel;
9126  COLORREF crColor;
9127 }
9128 
9129 alias EMRSETPIXELV TAGEMRSETPIXELV;
9130 alias EMRSETPIXELV TEMRSETPIXELV;
9131 alias EMRSETPIXELV* PEMRSETPIXELV;
9132 
9133 struct EMRSETVIEWPORTEXTEX
9134 {
9135  EMR emr;
9136  SIZEL szlExtent;
9137 }
9138 
9139 alias EMRSETVIEWPORTEXTEX TAGEMRSETVIEWPORTEXTEX;
9140 alias EMRSETVIEWPORTEXTEX TEMRSETVIEWPORTEXTEX;
9141 alias EMRSETVIEWPORTEXTEX* PEMRSETVIEWPORTEXTEX;
9142 alias EMRSETVIEWPORTEXTEX EMRSETWINDOWEXTEX;
9143 alias EMRSETVIEWPORTEXTEX TEMRSETWINDOWEXTEX;
9144 alias EMRSETVIEWPORTEXTEX* PEMRSETWINDOWEXTEX;
9145 
9146 struct EMRSETVIEWPORTORGEX
9147 {
9148  EMR emr;
9149  POINTL ptlOrigin;
9150 }
9151 
9152 alias EMRSETVIEWPORTORGEX TAGEMRSETVIEWPORTORGEX;
9153 alias EMRSETVIEWPORTORGEX TEMRSETVIEWPORTORGEX;
9154 alias EMRSETVIEWPORTORGEX* PEMRSETVIEWPORTORGEX;
9155 alias EMRSETVIEWPORTORGEX EMRSETWINDOWORGEX;
9156 alias EMRSETVIEWPORTORGEX TEMRSETWINDOWORGEX;
9157 alias EMRSETVIEWPORTORGEX* PEMRSETWINDOWORGEX;
9158 alias EMRSETVIEWPORTORGEX EMRSETBRUSHORGEX;
9159 alias EMRSETVIEWPORTORGEX TEMRSETBRUSHORGEX;
9160 alias EMRSETVIEWPORTORGEX* PEMRSETBRUSHORGEX;
9161 
9162 struct EMRSETWORLDTRANSFORM
9163 {
9164  EMR emr;
9165  XFORM xform;
9166 }
9167 
9168 alias EMRSETWORLDTRANSFORM TAGEMRSETWORLDTRANSFORM;
9169 alias EMRSETWORLDTRANSFORM TEMRSETWORLDTRANSFORM;
9170 alias EMRSETWORLDTRANSFORM* PEMRSETWORLDTRANSFORM;
9171 
9172 struct EMRSTRETCHBLT
9173 {
9174  EMR emr;
9175  RECTL rclBounds;
9176  LONG xDest;
9177  LONG yDest;
9178  LONG cxDest;
9179  LONG cyDest;
9180  DWORD dwRop;
9181  LONG xSrc;
9182  LONG ySrc;
9183  XFORM xformSrc;
9184  COLORREF crBkColorSrc;
9185  DWORD iUsageSrc;
9186  DWORD offBmiSrc;
9187  DWORD cbBmiSrc;
9188  DWORD offBitsSrc;
9189  DWORD cbBitsSrc;
9190  LONG cxSrc;
9191  LONG cySrc;
9192 }
9193 
9194 alias EMRSTRETCHBLT TAGEMRSTRETCHBLT;
9195 alias EMRSTRETCHBLT TEMRSTRETCHBLT;
9196 alias EMRSTRETCHBLT* PEMRSTRETCHBLT;
9197 
9198 struct EMRSTRETCHDIBITS
9199 {
9200  EMR emr;
9201  RECTL rclBounds;
9202  LONG xDest;
9203  LONG yDest;
9204  LONG xSrc;
9205  LONG ySrc;
9206  LONG cxSrc;
9207  LONG cySrc;
9208  DWORD offBmiSrc;
9209  DWORD cbBmiSrc;
9210  DWORD offBitsSrc;
9211  DWORD cbBitsSrc;
9212  DWORD iUsageSrc;
9213  DWORD dwRop;
9214  LONG cxDest;
9215  LONG cyDest;
9216 }
9217 
9218 alias EMRSTRETCHDIBITS TAGEMRSTRETCHDIBITS;
9219 alias EMRSTRETCHDIBITS TEMRSTRETCHDIBITS;
9220 alias EMRSTRETCHDIBITS* PEMRSTRETCHDIBITS;
9221 
9222 struct EMRABORTPATH
9223 {
9224  EMR emr;
9225 }
9226 
9227 alias EMRABORTPATH TEMRABORTPATH;
9228 alias EMRABORTPATH* PEMRABORTPATH;
9229 alias EMRABORTPATH TAGABORTPATH;
9230 alias EMRABORTPATH TABORTPATH;
9231 alias EMRABORTPATH EMRBEGINPATH;
9232 alias EMRABORTPATH TEMRBEGINPATH;
9233 alias EMRABORTPATH* PEMRBEGINPATH;
9234 alias EMRABORTPATH EMRENDPATH;
9235 alias EMRABORTPATH TEMRENDPATH;
9236 alias EMRABORTPATH* PEMRENDPATH;
9237 alias EMRABORTPATH EMRCLOSEFIGURE;
9238 alias EMRABORTPATH TEMRCLOSEFIGURE;
9239 alias EMRABORTPATH* PEMRCLOSEFIGURE;
9240 alias EMRABORTPATH EMRFLATTENPATH;
9241 alias EMRABORTPATH TEMRFLATTENPATH;
9242 alias EMRABORTPATH* PEMRFLATTENPATH;
9243 alias EMRABORTPATH EMRWIDENPATH;
9244 alias EMRABORTPATH TEMRWIDENPATH;
9245 alias EMRABORTPATH* PEMRWIDENPATH;
9246 alias EMRABORTPATH EMRSETMETARGN;
9247 alias EMRABORTPATH TEMRSETMETARGN;
9248 alias EMRABORTPATH* PEMRSETMETARGN;
9249 alias EMRABORTPATH EMRSAVEDC;
9250 alias EMRABORTPATH TEMRSAVEDC;
9251 alias EMRABORTPATH* PEMRSAVEDC;
9252 alias EMRABORTPATH EMRREALIZEPALETTE;
9253 alias EMRABORTPATH TEMRREALIZEPALETTE;
9254 alias EMRABORTPATH* PEMRREALIZEPALETTE;
9255 
9256 struct EMRSELECTCLIPPATH
9257 {
9258  EMR emr;
9259  DWORD iMode;
9260 }
9261 
9262 alias EMRSELECTCLIPPATH TAGEMRSELECTCLIPPATH;
9263 alias EMRSELECTCLIPPATH TEMRSELECTCLIPPATH;
9264 alias EMRSELECTCLIPPATH* PEMRSELECTCLIPPATH;
9265 alias EMRSELECTCLIPPATH EMRSETBKMODE;
9266 alias EMRSELECTCLIPPATH TEMRSETBKMODE;
9267 alias EMRSELECTCLIPPATH* PEMRSETBKMODE;
9268 alias EMRSELECTCLIPPATH EMRSETMAPMODE;
9269 alias EMRSELECTCLIPPATH TEMRSETMAPMODE;
9270 alias EMRSELECTCLIPPATH* PEMRSETMAPMODE;
9271 alias EMRSELECTCLIPPATH EMRSETPOLYFILLMODE;
9272 alias EMRSELECTCLIPPATH TEMRSETPOLYFILLMODE;
9273 alias EMRSELECTCLIPPATH* PEMRSETPOLYFILLMODE;
9274 alias EMRSELECTCLIPPATH EMRSETROP2;
9275 alias EMRSELECTCLIPPATH TEMRSETROP2;
9276 alias EMRSELECTCLIPPATH* PEMRSETROP2;
9277 alias EMRSELECTCLIPPATH EMRSETSTRETCHBLTMODE;
9278 alias EMRSELECTCLIPPATH TEMRSETSTRETCHBLTMODE;
9279 alias EMRSELECTCLIPPATH* PEMRSETSTRETCHBLTMODE;
9280 alias EMRSELECTCLIPPATH EMRSETTEXTALIGN;
9281 alias EMRSELECTCLIPPATH TEMRSETTEXTALIGN;
9282 alias EMRSELECTCLIPPATH* PEMRSETTEXTALIGN;
9283 alias EMRSELECTCLIPPATH EMRENABLEICM;
9284 alias EMRSELECTCLIPPATH TEMRENABLEICM;
9285 alias EMRSELECTCLIPPATH* PEMRENABLEICM;
9286 
9287 struct NMHDR
9288 {
9289  HWND hwndFrom;
9290  UINT idFrom;
9291  UINT code;
9292 }
9293 
9294 alias NMHDR TAGNMHDR;
9295 alias NMHDR TNMHDR;
9296 alias NMHDR* PNMHDR;
9297 
9298 struct ENCORRECTTEXT
9299 {
9300  NMHDR nmhdr;
9301  CHARRANGE chrg;
9302  ushort seltyp;
9303 }
9304 
9305 alias ENCORRECTTEXT _ENCORRECTTEXT;
9306 alias ENCORRECTTEXT TENCORRECTTEXT;
9307 alias ENCORRECTTEXT* PENCORRECTTEXT;
9308 
9309 struct ENDROPFILES
9310 {
9311  NMHDR nmhdr;
9312  HANDLE hDrop;
9313  LONG cp;
9314  WINBOOL fProtected;
9315 }
9316 
9317 alias ENDROPFILES _ENDROPFILES;
9318 alias ENDROPFILES TENDROPFILES;
9319 alias ENDROPFILES* PENDROPFILES;
9320 
9321 struct ENSAVECLIPBOARD
9322 {
9323  NMHDR nmhdr;
9324  LONG cObjectCount;
9325  LONG cch;
9326 }
9327 
9328 alias ENSAVECLIPBOARD TENSAVECLIPBOARD;
9329 alias ENSAVECLIPBOARD* PENSAVECLIPBOARD;
9330 
9331 struct ENOLEOPFAILED
9332 {
9333  NMHDR nmhdr;
9334  LONG iob;
9335  LONG lOper;
9336  HRESULT hr;
9337 }
9338 
9339 alias ENOLEOPFAILED TENOLEOPFAILED;
9340 alias ENOLEOPFAILED* PENOLEOPFAILED;
9341 
9342 align(2) struct ENHMETAHEADER
9343 {
9344  DWORD iType;
9345  DWORD nSize;
9346  RECTL rclBounds;
9347  RECTL rclFrame;
9348  DWORD dSignature;
9349  DWORD nVersion;
9350  DWORD nBytes;
9351  DWORD nRecords;
9352  ushort nHandles;
9353  ushort sReserved;
9354  DWORD nDescription;
9355  DWORD offDescription;
9356  DWORD nPalEntries;
9357  SIZEL szlDevice;
9358  SIZEL szlMillimeters;
9359 //#if (WINVER >= 0x0400)
9360  DWORD cbPixelFormat;
9361  DWORD offPixelFormat;
9362  DWORD bOpenGL;
9363 //#endif /* WINVER >= 0x0400 */
9364 //#if (WINVER >= 0x0500)
9365  SIZEL szlMicrometers;
9366 //#endif /* WINVER >= 0x0500 */
9367 }
9368 
9369 alias ENHMETAHEADER* LPENHMETAHEADER;
9370 alias ENHMETAHEADER TAGENHMETAHEADER;
9371 alias ENHMETAHEADER TENHMETAHEADER;
9372 alias ENHMETAHEADER* PENHMETAHEADER;
9373 
9374 struct ENHMETARECORD
9375 {
9376  DWORD iType;
9377  DWORD nSize;
9378  DWORD[1 + 0] dParm;
9379 }
9380 
9381 alias ENHMETARECORD* LPENHMETARECORD;
9382 alias ENHMETARECORD TAGENHMETARECORD;
9383 alias ENHMETARECORD TENHMETARECORD;
9384 alias ENHMETARECORD* PENHMETARECORD;
9385 
9386 struct ENPROTECTED
9387 {
9388  NMHDR nmhdr;
9389  UINT msg;
9390  WPARAM wParam;
9391  LPARAM lParam;
9392  CHARRANGE chrg;
9393 }
9394 
9395 alias ENPROTECTED _ENPROTECTED;
9396 alias ENPROTECTED TENPROTECTED;
9397 alias ENPROTECTED* PENPROTECTED;
9398 
9399 struct SERVICE_STATUS
9400 {
9401  DWORD dwServiceType;
9402  DWORD dwCurrentState;
9403  DWORD dwControlsAccepted;
9404  DWORD dwWin32ExitCode;
9405  DWORD dwServiceSpecificExitCode;
9406  DWORD dwCheckPoint;
9407  DWORD dwWaitHint;
9408 }
9409 
9410 alias SERVICE_STATUS* LPSERVICE_STATUS;
9411 alias SERVICE_STATUS _SERVICE_STATUS;
9412 alias SERVICE_STATUS TSERVICESTATUS;
9413 alias SERVICE_STATUS* PSERVICESTATUS;
9414 
9415 struct ENUM_SERVICE_STATUS
9416 {
9417  LPTSTR lpServiceName;
9418  LPTSTR lpDisplayName;
9419  SERVICE_STATUS ServiceStatus;
9420 }
9421 
9422 alias ENUM_SERVICE_STATUS* LPENUM_SERVICE_STATUS;
9423 alias ENUM_SERVICE_STATUS _ENUM_SERVICE_STATUS;
9424 alias ENUM_SERVICE_STATUS TENUMSERVICESTATUS;
9425 alias ENUM_SERVICE_STATUS* PENUMSERVICESTATUS;
9426 
9427 struct ENUMLOGFONTA {
9428   LOGFONTA elfLogFont;
9429   BYTE[LF_FULLFACESIZE]  elfFullName;
9430   BYTE[LF_FACESIZE]  elfStyle;
9431 }
9432 struct ENUMLOGFONTW {
9433   LOGFONTW elfLogFont;
9434   WCHAR[LF_FULLFACESIZE] elfFullName;
9435   WCHAR[LF_FACESIZE] elfStyle;
9436 }
9437 struct ENUMLOGFONTEXA {
9438  LOGFONTA  elfLogFont;
9439  BYTE[LF_FULLFACESIZE]   elfFullName;
9440  BYTE[LF_FACESIZE]   elfStyle;
9441  BYTE[LF_FACESIZE]   elfScript;
9442 }
9443 struct ENUMLOGFONTEXW {
9444  LOGFONTW  elfLogFont;
9445  WCHAR[LF_FULLFACESIZE]  elfFullName;
9446  WCHAR[LF_FACESIZE]  elfStyle;
9447  WCHAR[LF_FACESIZE]  elfScript;
9448 }
9449 version(Win32SansUnicode){
9450  alias ENUMLOGFONTA ENUMLOGFONT;
9451  alias ENUMLOGFONTEXA ENUMLOGFONTEX;
9452 }else {
9453  alias ENUMLOGFONTW ENUMLOGFONT;
9454  alias ENUMLOGFONTEXW ENUMLOGFONTEX;
9455 }
9456 alias ENUMLOGFONT TAGENUMLOGFONT;
9457 alias ENUMLOGFONT TENUMLOGFONT;
9458 alias ENUMLOGFONT* PENUMLOGFONT;
9459 alias ENUMLOGFONTEX TAGENUMLOGFONTEX;
9460 alias ENUMLOGFONTEX TENUMLOGFONTEX;
9461 alias ENUMLOGFONTEX* PENUMLOGFONTEX;
9462 
9463 struct EVENTLOGRECORD
9464 {
9465  DWORD Length;
9466  DWORD Reserved;
9467  DWORD RecordNumber;
9468  DWORD TimeGenerated;
9469  DWORD TimeWritten;
9470  DWORD EventID;
9471  ushort EventType;
9472  ushort NumStrings;
9473  ushort EventCategory;
9474  ushort ReservedFlags;
9475  DWORD ClosingRecordNumber;
9476  DWORD StringOffset;
9477  DWORD UserSidLength;
9478  DWORD UserSidOffset;
9479  DWORD DataLength;
9480  DWORD DataOffset;
9481 }
9482 
9483 alias EVENTLOGRECORD _EVENTLOGRECORD;
9484 alias EVENTLOGRECORD TEVENTLOGRECORD;
9485 alias EVENTLOGRECORD* PEVENTLOGRECORD;
9486 
9487 struct EVENTMSG
9488 {
9489  UINT message;
9490  UINT paramL;
9491  UINT paramH;
9492  DWORD time;
9493  HWND hwnd;
9494 }
9495 
9496 alias EVENTMSG TAGEVENTMSG;
9497 alias EVENTMSG TEVENTMSG;
9498 alias EVENTMSG* PEVENTMSG;
9499 
9500 struct EXCEPTION_POINTERS
9501 {
9502  PEXCEPTION_RECORD ExceptionRecord;
9503  PCONTEXT ContextRecord;
9504 }
9505 
9506 alias EXCEPTION_POINTERS* LPEXCEPTION_POINTERS;
9507 alias EXCEPTION_POINTERS* PEXCEPTION_POINTERS;
9508 alias EXCEPTION_POINTERS _EXCEPTION_POINTERS;
9509 alias EXCEPTION_POINTERS TEXCEPTIONPOINTERS;
9510 alias EXCEPTION_POINTERS* PEXCEPTIONPOINTERS;
9511 
9512 struct EXT_BUTTON
9513 {
9514  ushort idCommand;
9515  ushort idsHelp;
9516  ushort fsStyle;
9517 }
9518 
9519 alias EXT_BUTTON* LPEXT_BUTTON;
9520 alias EXT_BUTTON _EXT_BUTTON;
9521 alias EXT_BUTTON TEXTBUTTON;
9522 alias EXT_BUTTON* PEXTBUTTON;
9523 
9524 struct FILTERKEYS
9525 {
9526  UINT cbSize;
9527  DWORD dwFlags;
9528  DWORD iWaitMSec;
9529  DWORD iDelayMSec;
9530  DWORD iRepeatMSec;
9531  DWORD iBounceMSec;
9532 }
9533 
9534 alias FILTERKEYS TAGFILTERKEYS;
9535 alias FILTERKEYS TFILTERKEYS;
9536 alias FILTERKEYS* PFILTERKEYS;
9537 
9538 struct FIND_NAME_BUFFER
9539 {
9540  UCHAR length;
9541  UCHAR access_control;
9542  UCHAR frame_control;
9543  UCHAR[1 + 5] destination_addr;
9544  UCHAR[1 + 5] source_addr;
9545  UCHAR[1 + 17] routing_info;
9546 }
9547 
9548 alias FIND_NAME_BUFFER _FIND_NAME_BUFFER;
9549 alias FIND_NAME_BUFFER TFINDNAMEBUFFER;
9550 alias FIND_NAME_BUFFER* PFINDNAMEBUFFER;
9551 
9552 struct FIND_NAME_HEADER
9553 {
9554  ushort node_count;
9555  UCHAR reserved;
9556  UCHAR unique_group;
9557 }
9558 
9559 alias FIND_NAME_HEADER _FIND_NAME_HEADER;
9560 alias FIND_NAME_HEADER TFINDNAMEHEADER;
9561 alias FIND_NAME_HEADER* PFINDNAMEHEADER;
9562 
9563 struct FINDREPLACE
9564 {
9565  DWORD lStructSize;
9566  HWND hwndOwner;
9567  HINST hInstance;
9568  DWORD Flags;
9569  LPTSTR lpstrFindWhat;
9570  LPTSTR lpstrReplaceWith;
9571  ushort wFindWhatLen;
9572  ushort wReplaceWithLen;
9573  LPARAM lCustData;
9574  LPFRHOOKPROC lpfnHook;
9575  LPCTSTR lpTemplateName;
9576 }
9577 
9578 alias FINDREPLACE* LPFINDREPLACE;
9579 alias FINDREPLACE TFINDREPLACE;
9580 alias FINDREPLACE* PFINDREPLACE;
9581 
9582 struct TFINDTEXT
9583 {
9584  CHARRANGE chrg;
9585  LPSTR lpstrText;
9586 }
9587 
9588 alias TFINDTEXT _FINDTEXT;
9589 alias TFINDTEXT FINDTEXT;
9590 alias TFINDTEXT* PFINDTEXT;
9591 
9592 struct FINDTEXTEX
9593 {
9594  CHARRANGE chrg;
9595  LPSTR lpstrText;
9596  CHARRANGE chrgText;
9597 }
9598 
9599 alias FINDTEXTEX _FINDTEXTEX;
9600 alias FINDTEXTEX TFINDTEXTEX;
9601 alias FINDTEXTEX* PFINDTEXTEX;
9602 
9603 struct FMS_GETDRIVEINFO
9604 {
9605  DWORD dwTotalSpace;
9606  DWORD dwFreeSpace;
9607  TCHAR[1 + 259] szPath;
9608  TCHAR[1 + 13] szVolume;
9609  TCHAR[1 + 127] szShare;
9610 }
9611 
9612 alias FMS_GETDRIVEINFO _FMS_GETDRIVEINFO;
9613 alias FMS_GETDRIVEINFO TFMSGETDRIVEINFO;
9614 alias FMS_GETDRIVEINFO* PFMSGETDRIVEINFO;
9615 
9616 struct FMS_GETFILESEL
9617 {
9618  FILETIME ftTime;
9619  DWORD dwSize;
9620  ubyte bAttr;
9621  TCHAR[1 + 259] szName;
9622 }
9623 
9624 alias FMS_GETFILESEL _FMS_GETFILESEL;
9625 alias FMS_GETFILESEL TFMSGETFILESEL;
9626 alias FMS_GETFILESEL* PFMSGETFILESEL;
9627 
9628 struct FMS_LOAD
9629 {
9630  DWORD dwSize;
9631  TCHAR[1 + MENU_TEXT_LEN-1] szMenuName;
9632  HMENU hMenu;
9633  UINT wMenuDelta;
9634 }
9635 
9636 alias FMS_LOAD _FMS_LOAD;
9637 alias FMS_LOAD TFMSLOAD;
9638 alias FMS_LOAD* PFMSLOAD;
9639 
9640 struct FMS_TOOLBARLOAD
9641 {
9642  DWORD dwSize;
9643  LPEXT_BUTTON lpButtons;
9644  ushort cButtons;
9645  ushort cBitmaps;
9646  ushort idBitmap;
9647  HBITMAP hBitmap;
9648 }
9649 
9650 alias FMS_TOOLBARLOAD _FMS_TOOLBARLOAD;
9651 alias FMS_TOOLBARLOAD TFMSTOOLBARLOAD;
9652 alias FMS_TOOLBARLOAD* PFMSTOOLBARLOAD;
9653 
9654 struct FOCUS_EVENT_RECORD
9655 {
9656  WINBOOL bSetFocus;
9657 }
9658 
9659 alias FOCUS_EVENT_RECORD _FOCUS_EVENT_RECORD;
9660 alias FOCUS_EVENT_RECORD TFOCUSEVENTRECORD;
9661 alias FOCUS_EVENT_RECORD* PFOCUSEVENTRECORD;
9662 
9663 struct FORM_INFO_1
9664 {
9665  DWORD Flags;
9666  LPTSTR pName;
9667  SIZEL Size;
9668  RECTL ImageableArea;
9669 }
9670 
9671 alias FORM_INFO_1 _FORM_INFO_1;
9672 alias FORM_INFO_1 TFORMINFO1;
9673 alias FORM_INFO_1* PFORMINFO1;
9674 
9675 struct FORMAT_PARAMETERS
9676 {
9677  MEDIA_TYPE MediaType;
9678  DWORD StartCylinderNumber;
9679  DWORD EndCylinderNumber;
9680  DWORD StartHeadNumber;
9681  DWORD EndHeadNumber;
9682 }
9683 
9684 alias FORMAT_PARAMETERS _FORMAT_PARAMETERS;
9685 alias FORMAT_PARAMETERS TFORMATPARAMETERS;
9686 alias FORMAT_PARAMETERS* PFORMATPARAMETERS;
9687 
9688 struct FORMATRANGE
9689 {
9690  HDC _hdc;
9691  HDC hdcTarget;
9692  RECT rc;
9693  RECT rcPage;
9694  CHARRANGE chrg;
9695 }
9696 
9697 alias FORMATRANGE _FORMATRANGE;
9698 alias FORMATRANGE TFORMATRANGE;
9699 alias FORMATRANGE* PFORMATRANGE;
9700 
9701 struct GCP_RESULTSA
9702 {
9703  DWORD   lStructSize;
9704  LPSTR   lpOutString;
9705  UINT  * lpOrder;
9706  int   * lpDx;
9707  int   * lpCaretPos;
9708  LPSTR   lpClass;
9709  LPWSTR  lpGlyphs;
9710  UINT nGlyphs;
9711  int  nMaxFit;
9712 }
9713 
9714 struct GCP_RESULTSW
9715 {
9716  DWORD   lStructSize;
9717  LPWSTR  lpOutString;
9718  UINT  * lpOrder;
9719  int   * lpDx;
9720  int   * lpCaretPos;
9721  LPSTR   lpClass;
9722  LPWSTR  lpGlyphs;
9723  UINT nGlyphs;
9724  int  nMaxFit;
9725 }
9726 version(Win32SansUnicode)
9727 {
9728  alias GCP_RESULTSA GCP_RESULTS;
9729 }
9730 else
9731 {
9732  alias GCP_RESULTSW GCP_RESULTS;
9733 }
9734 alias GCP_RESULTS* LPGCP_RESULTS;
9735 alias GCP_RESULTS TAGGCP_RESULTS;
9736 alias GCP_RESULTS TGCPRESULTS;
9737 alias GCP_RESULTS* PGCPRESULTS;
9738 
9739 struct GENERIC_MAPPING
9740 {
9741  ACCESS_MASK GenericRead;
9742  ACCESS_MASK GenericWrite;
9743  ACCESS_MASK GenericExecute;
9744  ACCESS_MASK GenericAll;
9745 }
9746 
9747 alias GENERIC_MAPPING* PGENERIC_MAPPING;
9748 alias GENERIC_MAPPING _GENERIC_MAPPING;
9749 alias GENERIC_MAPPING TGENERICMAPPING;
9750 alias GENERIC_MAPPING* PGENERICMAPPING;
9751 
9752 struct GLYPHMETRICS
9753 {
9754  UINT gmBlackBoxX;
9755  UINT gmBlackBoxY;
9756  POINT gmptGlyphOrigin;
9757  short gmCellIncX;
9758  short gmCellIncY;
9759 }
9760 
9761 alias GLYPHMETRICS* LPGLYPHMETRICS;
9762 alias GLYPHMETRICS _GLYPHMETRICS;
9763 alias GLYPHMETRICS TGLYPHMETRICS;
9764 alias GLYPHMETRICS* PGLYPHMETRICS;
9765 
9766 struct HANDLETABLE
9767 {
9768  HGDIOBJ[1 + 0] objectHandle;
9769 }
9770 
9771 alias HANDLETABLE TAGHANDLETABLE;
9772 alias HANDLETABLE THANDLETABLE;
9773 alias HANDLETABLE* LPHANDLETABLE;
9774 
9775 struct HD_HITTESTINFO
9776 {
9777  POINT pt;
9778  UINT flags;
9779  int iItem;
9780 }
9781 
9782 alias HD_HITTESTINFO _HD_HITTESTINFO;
9783 alias HD_HITTESTINFO THDHITTESTINFO;
9784 alias HD_HITTESTINFO  HDHITTESTINFO;
9785 alias HD_HITTESTINFO* PHDHITTESTINFO;
9786 
9787 struct HD_ITEM
9788 {
9789  UINT mask;
9790  int cxy;
9791  LPTSTR pszText;
9792  HBITMAP hbm;
9793  int cchTextMax;
9794  int fmt;
9795  LPARAM lParam;
9796  // _WIN32_IE >= 0x300
9797  int iImage;
9798  int iOrder;
9799  // _WIN32_IE >= 0x500
9800  UINT type;
9801  void* pvFilter;
9802  // _WIN32_WINNT >= 0x600
9803  //UINT state;
9804 }
9805 
9806 alias HD_ITEM _HD_ITEM;
9807 alias HD_ITEM THDITEM;
9808 alias HD_ITEM* PHDITEM;
9809 
9810 struct WINDOWPOS
9811 {
9812  HWND _hwnd;
9813  HWND hwndInsertAfter;
9814  int x;
9815  int y;
9816  int cx;
9817  int cy;
9818  UINT flags;
9819 }
9820 
9821 alias WINDOWPOS* LPWINDOWPOS;
9822 alias WINDOWPOS _WINDOWPOS;
9823 alias WINDOWPOS TWINDOWPOS;
9824 alias WINDOWPOS* PWINDOWPOS;
9825 
9826 struct HD_LAYOUT
9827 {
9828  RECT* prc;
9829  WINDOWPOS* pwpos;
9830 }
9831 
9832 alias HD_LAYOUT _HD_LAYOUT;
9833 alias HD_LAYOUT THDLAYOUT;
9834 alias HD_LAYOUT  HDLAYOUT;
9835 alias HD_LAYOUT* PHDLAYOUT;
9836 
9837 struct HD_NOTIFY
9838 {
9839  NMHDR hdr;
9840  int iItem;
9841  int iButton;
9842  HD_ITEM* pitem;
9843 }
9844 
9845 alias HD_NOTIFY _HD_NOTIFY;
9846 alias HD_NOTIFY THDNOTIFY;
9847 alias HD_NOTIFY* PHDNOTIFY;
9848 
9849 struct HELPINFO
9850 {
9851  UINT cbSize;
9852  int iContextType;
9853  int iCtrlId;
9854  HANDLE hItemHandle;
9855  DWORD dwContextId;
9856  POINT MousePos;
9857 }
9858 
9859 alias HELPINFO* LPHELPINFO;
9860 alias HELPINFO TAGHELPINFO;
9861 alias HELPINFO THELPINFO;
9862 alias HELPINFO* PHELPINFO;
9863 
9864 struct HELPWININFO
9865 {
9866  int wStructSize;
9867  int x;
9868  int y;
9869  int dx;
9870  int dy;
9871  int wMax;
9872  TCHAR[1 + 1] rgchMember;
9873 }
9874 
9875 alias HELPWININFO THELPWININFO;
9876 alias HELPWININFO* PHELPWININFO;
9877 
9878 struct HIGHCONTRASTA
9879 {
9880  UINT    cbSize;
9881  DWORD   dwFlags;
9882  LPSTR   lpszDefaultScheme;
9883 }
9884 struct HIGHCONTRASTW
9885 {
9886  UINT    cbSize;
9887  DWORD   dwFlags;
9888  LPWSTR     lpszDefaultScheme;
9889 }
9890 version(Win32SansUnicode)
9891 {
9892  alias HIGHCONTRASTA HIGHCONTRAST;
9893 }
9894 else
9895 {
9896  alias HIGHCONTRASTW HIGHCONTRAST;
9897 }
9898 alias HIGHCONTRAST* LPHIGHCONTRAST;
9899 alias HIGHCONTRAST TAGHIGHCONTRAST;
9900 alias HIGHCONTRAST THIGHCONTRAST;
9901 alias HIGHCONTRAST* PHIGHCONTRAST;
9902 
9903 struct HSZPAIR
9904 {
9905  HSZ hszSvc;
9906  HSZ hszTopic;
9907 }
9908 
9909 alias HSZPAIR TAGHSZPAIR;
9910 alias HSZPAIR THSZPAIR;
9911 alias HSZPAIR* PHSZPAIR;
9912 
9913 struct ICONINFO
9914 {
9915  WINBOOL fIcon;
9916  DWORD xHotspot;
9917  DWORD yHotspot;
9918  HBITMAP hbmMask;
9919  HBITMAP hbmColor;
9920 }
9921 
9922 alias ICONINFO _ICONINFO;
9923 alias ICONINFO TICONINFO;
9924 alias ICONINFO* PICONINFO;
9925 
9926 struct ICONMETRICS
9927 {
9928  UINT cbSize;
9929  int iHorzSpacing;
9930  int iVertSpacing;
9931  int iTitleWrap;
9932  LOGFONT lfFont;
9933 }
9934 
9935 alias ICONMETRICS* LPICONMETRICS;
9936 alias ICONMETRICS TAGICONMETRICS;
9937 alias ICONMETRICS TICONMETRICS;
9938 alias ICONMETRICS* PICONMETRICS;
9939 
9940 struct IMAGEINFO
9941 {
9942  HBITMAP hbmImage;
9943  HBITMAP hbmMask;
9944  int Unused1;
9945  int Unused2;
9946  RECT rcImage;
9947 }
9948 
9949 alias IMAGEINFO _IMAGEINFO;
9950 alias IMAGEINFO TIMAGEINFO;
9951 alias IMAGEINFO* PIMAGEINFO;
9952 
9953 align(1) struct KEY_EVENT_RECORD
9954 {
9955  WINBOOL bKeyDown;
9956  ushort wRepeatCount;
9957  ushort wVirtualKeyCode;
9958  ushort wVirtualScanCode;
9959 
9960  union
9961  {
9962   struct
9963   {
9964    WCHAR UnicodeChar;
9965    DWORD dwControlKeyState;
9966   }
9967   struct
9968   {
9969    char AsciiChar;
9970   }
9971  }
9972 }
9973 
9974 alias KEY_EVENT_RECORD _KEY_EVENT_RECORD;
9975 alias KEY_EVENT_RECORD TKEYEVENTRECORD;
9976 alias KEY_EVENT_RECORD* PKEYEVENTRECORD;
9977 
9978 struct MOUSE_EVENT_RECORD
9979 {
9980  COORD dwMousePosition;
9981  DWORD dwButtonState;
9982  DWORD dwControlKeyState;
9983  DWORD dwEventFlags;
9984 }
9985 
9986 alias MOUSE_EVENT_RECORD _MOUSE_EVENT_RECORD;
9987 alias MOUSE_EVENT_RECORD TMOUSEEVENTRECORD;
9988 alias MOUSE_EVENT_RECORD* PMOUSEEVENTRECORD;
9989 
9990 struct WINDOW_BUFFER_SIZE_RECORD
9991 {
9992  COORD dwSize;
9993 }
9994 
9995 alias WINDOW_BUFFER_SIZE_RECORD _WINDOW_BUFFER_SIZE_RECORD;
9996 alias WINDOW_BUFFER_SIZE_RECORD TWINDOWBUFFERSIZERECORD;
9997 alias WINDOW_BUFFER_SIZE_RECORD* PWINDOWBUFFERSIZERECORD;
9998 
9999 struct MENU_EVENT_RECORD
10000 {
10001  UINT dwCommandId;
10002 }
10003 
10004 alias MENU_EVENT_RECORD* PMENU_EVENT_RECORD;
10005 alias MENU_EVENT_RECORD _MENU_EVENT_RECORD;
10006 alias MENU_EVENT_RECORD TMENUEVENTRECORD;
10007 alias MENU_EVENT_RECORD* PMENUEVENTRECORD;
10008 
10009 struct INPUT_RECORD
10010 {
10011  ushort EventType;
10012 
10013  union
10014  {
10015   struct
10016   {
10017    KEY_EVENT_RECORD KeyEvent;
10018   }
10019   struct
10020   {
10021    MOUSE_EVENT_RECORD MouseEvent;
10022   }
10023   struct
10024   {
10025    WINDOW_BUFFER_SIZE_RECORD WindowBufferSizeEvent;
10026   }
10027   struct
10028   {
10029    MENU_EVENT_RECORD MenuEvent;
10030   }
10031   struct
10032   {
10033    FOCUS_EVENT_RECORD FocusEvent;
10034   }
10035  }
10036 }
10037 
10038 alias INPUT_RECORD* PINPUT_RECORD;
10039 alias INPUT_RECORD _INPUT_RECORD;
10040 alias INPUT_RECORD TINPUTRECORD;
10041 alias INPUT_RECORD* PINPUTRECORD;
10042 
10043 struct SYSTEMTIME
10044 {
10045  ushort wYear;
10046  ushort wMonth;
10047  ushort wDayOfWeek;
10048  ushort wDay;
10049  ushort wHour;
10050  ushort wMinute;
10051  ushort wSecond;
10052  ushort wMilliseconds;
10053 }
10054 
10055 alias SYSTEMTIME* LPSYSTEMTIME;
10056 alias SYSTEMTIME _SYSTEMTIME;
10057 alias SYSTEMTIME TSYSTEMTIME;
10058 alias SYSTEMTIME* PSYSTEMTIME;
10059 
10060 struct JOB_INFO_1
10061 {
10062  DWORD JobId;
10063  LPTSTR pPrinterName;
10064  LPTSTR pMachineName;
10065  LPTSTR pUserName;
10066  LPTSTR pDocument;
10067  LPTSTR pDatatype;
10068  LPTSTR pStatus;
10069  DWORD Status;
10070  DWORD Priority;
10071  DWORD Position;
10072  DWORD TotalPages;
10073  DWORD PagesPrinted;
10074  SYSTEMTIME Submitted;
10075 }
10076 
10077 alias JOB_INFO_1 _JOB_INFO_1;
10078 alias JOB_INFO_1 TJOBINFO1;
10079 alias JOB_INFO_1* PJOBINFO1;
10080 
10081 struct SID_IDENTIFIER_AUTHORITY
10082 {
10083  ubyte[1 + 5] Value;
10084 }
10085 
10086 alias SID_IDENTIFIER_AUTHORITY* LPSID_IDENTIFIER_AUTHORITY;
10087 alias SID_IDENTIFIER_AUTHORITY* PSID_IDENTIFIER_AUTHORITY;
10088 alias SID_IDENTIFIER_AUTHORITY _SID_IDENTIFIER_AUTHORITY;
10089 alias SID_IDENTIFIER_AUTHORITY TSIDIDENTIFIERAUTHORITY;
10090 alias SID_IDENTIFIER_AUTHORITY* PSIDIDENTIFIERAUTHORITY;
10091 
10092 struct SID
10093 {
10094  ubyte Revision;
10095  ubyte SubAuthorityCount;
10096  SID_IDENTIFIER_AUTHORITY IdentifierAuthority;
10097  DWORD[1 + ANYSIZE_ARRAY-1] SubAuthority;
10098 }
10099 
10100 alias SID _SID;
10101 alias SID TSID;
10102 alias SID* PSID;
10103 alias ushort SECURITY_DESCRIPTOR_CONTROL;
10104 alias SECURITY_DESCRIPTOR_CONTROL* PSECURITY_DESCRIPTOR_CONTROL;
10105 alias SECURITY_DESCRIPTOR_CONTROL TSECURITYDESCRIPTORCONTROL;
10106 alias SECURITY_DESCRIPTOR_CONTROL* PSECURITYDESCRIPTORCONTROL;
10107 
10108 struct SECURITY_DESCRIPTOR
10109 {
10110  ubyte Revision;
10111  ubyte Sbz1;
10112  SECURITY_DESCRIPTOR_CONTROL Control;
10113  PSID Owner;
10114  PSID Group;
10115  PACL Sacl;
10116  PACL Dacl;
10117 }
10118 
10119 alias SECURITY_DESCRIPTOR* PSECURITY_DESCRIPTOR;
10120 alias SECURITY_DESCRIPTOR _SECURITY_DESCRIPTOR;
10121 alias SECURITY_DESCRIPTOR TSECURITYDESCRIPTOR;
10122 alias SECURITY_DESCRIPTOR* PSECURITYDESCRIPTOR;
10123 
10124 struct JOB_INFO_2
10125 {
10126  DWORD JobId;
10127  LPTSTR pPrinterName;
10128  LPTSTR pMachineName;
10129  LPTSTR pUserName;
10130  LPTSTR pDocument;
10131  LPTSTR pNotifyName;
10132  LPTSTR pDatatype;
10133  LPTSTR pPrintProcessor;
10134  LPTSTR pParameters;
10135  LPTSTR pDriverName;
10136  LPDEVMODE pDevMode;
10137  LPTSTR pStatus;
10138  PSECURITY_DESCRIPTOR pSecurityDescriptor;
10139  DWORD Status;
10140  DWORD Priority;
10141  DWORD Position;
10142  DWORD StartTime;
10143  DWORD UntilTime;
10144  DWORD TotalPages;
10145  DWORD Size;
10146  SYSTEMTIME Submitted;
10147  DWORD Time;
10148  DWORD PagesPrinted;
10149 }
10150 
10151 alias JOB_INFO_2 _JOB_INFO_2;
10152 alias JOB_INFO_2 TJOBINFO2;
10153 alias JOB_INFO_2* PJOBINFO2;
10154 
10155 struct KERNINGPAIR
10156 {
10157  ushort wFirst;
10158  ushort wSecond;
10159  int iKernAmount;
10160 }
10161 
10162 alias KERNINGPAIR* LPKERNINGPAIR;
10163 alias KERNINGPAIR TAGKERNINGPAIR;
10164 alias KERNINGPAIR TKERNINGPAIR;
10165 alias KERNINGPAIR* PKERNINGPAIR;
10166 
10167 struct LANA_ENUM
10168 {
10169  UCHAR length;
10170  UCHAR[1 + MAX_LANA] lana;
10171 }
10172 
10173 alias LANA_ENUM _LANA_ENUM;
10174 alias LANA_ENUM TLANAENUM;
10175 alias LANA_ENUM* PLANAENUM;
10176 
10177 struct LDT_ENTRY
10178 {
10179  ushort LimitLow;
10180  ushort BaseLow;
10181 
10182  union
10183  {
10184   struct
10185   {
10186    ubyte BaseMid;
10187    ubyte Flags1;
10188    ubyte Flags2;
10189    ubyte BaseHi;
10190   }
10191   struct
10192   {
10193    int flag0;
10194   }
10195  }
10196 }
10197 
10198 alias LDT_ENTRY* LPLDT_ENTRY;
10199 alias LDT_ENTRY* PLDT_ENTRY;
10200 alias LDT_ENTRY _LDT_ENTRY;
10201 alias LDT_ENTRY TLDTENTRY;
10202 alias LDT_ENTRY* PLDTENTRY;
10203 enum : DWORD 
10204 {
10205  bm_LDT_ENTRY_BaseMid = (0xFF),
10206  bp_LDT_ENTRY_BaseMid = (0),
10207  bm_LDT_ENTRY_Type = (0x1F00),
10208  bp_LDT_ENTRY_Type = (8),
10209  bm_LDT_ENTRY_Dpl = (0x6000),
10210  bp_LDT_ENTRY_Dpl = (13),
10211  bm_LDT_ENTRY_Pres = (0x8000),
10212  bp_LDT_ENTRY_Pres = (15),
10213  bm_LDT_ENTRY_LimitHi = (0xF0000),
10214  bp_LDT_ENTRY_LimitHi = (16),
10215  bm_LDT_ENTRY_Sys = (0x100000),
10216  bp_LDT_ENTRY_Sys = (20),
10217  bm_LDT_ENTRY_Reserved_0 = (0x200000),
10218  bp_LDT_ENTRY_Reserved_0 = (21),
10219  bm_LDT_ENTRY_Default_Big = (0x400000),
10220  bp_LDT_ENTRY_Default_Big = (22),
10221  bm_LDT_ENTRY_Granularity = (0x800000),
10222  bp_LDT_ENTRY_Granularity = (23),
10223  bm_LDT_ENTRY_BaseHi = (0xFF000000),
10224  bp_LDT_ENTRY_BaseHi = (24),
10225 }
10226 
10227 struct LOCALESIGNATURE
10228 {
10229  DWORD[1 + 3] lsUsb;
10230  DWORD[1 + 1] lsCsbDefault;
10231  DWORD[1 + 1] lsCsbSupported;
10232 }
10233 
10234 alias LOCALESIGNATURE TAGLOCALESIGNATURE;
10235 alias LOCALESIGNATURE TLOCALESIGNATURE;
10236 alias LOCALESIGNATURE* PLOCALESIGNATURE;
10237 
10238 struct LOCALGROUP_MEMBERS_INFO_0
10239 {
10240  PSID lgrmi0_sid;
10241 }
10242 
10243 alias LOCALGROUP_MEMBERS_INFO_0 _LOCALGROUP_MEMBERS_INFO_0;
10244 alias LOCALGROUP_MEMBERS_INFO_0 TLOCALGROUPMEMBERSINFO0;
10245 alias LOCALGROUP_MEMBERS_INFO_0* PLOCALGROUPMEMBERSINFO0;
10246 
10247 struct LOCALGROUP_MEMBERS_INFO_3
10248 {
10249  LPWSTR lgrmi3_domainandname;
10250 }
10251 
10252 alias LOCALGROUP_MEMBERS_INFO_3 _LOCALGROUP_MEMBERS_INFO_3;
10253 alias LOCALGROUP_MEMBERS_INFO_3 TLOCALGROUPMEMBERSINFO3;
10254 alias LOCALGROUP_MEMBERS_INFO_3* PLOCALGROUPMEMBERSINFO3;
10255 alias int FXPT16DOT16;
10256 alias FXPT16DOT16* LPFXPT16DOT16;
10257 alias FXPT16DOT16 TFXPT16DOT16;
10258 alias FXPT16DOT16* PFXPT16DOT16;
10259 struct LUID {
10260  DWORD LowPart;
10261  LONG  HighPart;
10262 }
10263 alias LUID TLUID;
10264 alias LUID* PLUID;
10265 
10266 struct LUID_AND_ATTRIBUTES
10267 {
10268  LUID Luid;
10269  DWORD Attributes;
10270 }
10271 
10272 alias LUID_AND_ATTRIBUTES _LUID_AND_ATTRIBUTES;
10273 alias LUID_AND_ATTRIBUTES TLUIDANDATTRIBUTES;
10274 alias LUID_AND_ATTRIBUTES* PLUIDANDATTRIBUTES;
10275 alias LUID_AND_ATTRIBUTES[1 + ANYSIZE_ARRAY-1] LUID_AND_ATTRIBUTES_ARRAY;
10276 alias LUID_AND_ATTRIBUTES_ARRAY* PLUID_AND_ATTRIBUTES_ARRAY;
10277 alias LUID_AND_ATTRIBUTES_ARRAY TLUIDANDATTRIBUTESARRAY;
10278 alias LUID_AND_ATTRIBUTES_ARRAY* PLUIDANDATTRIBUTESARRAY;
10279 
10280 struct LVCOLUMNA 
10281 {
10282  UINT mask;
10283  int fmt;
10284  int cx;
10285  LPSTR pszText;
10286  int cchTextMax;
10287  int iSubItem;
10288  int iImage;
10289  //if (_WIN32_IE >= 0x0300)
10290  int iOrder;
10291  //endif
10292  //if (_WIN32_WINNT >= 0x0600)
10293  //int cxMin;
10294  //int cxDefault;
10295  //int cxIdeal;
10296  //endif
10297 }
10298 struct LVCOLUMNW 
10299 {
10300  UINT mask;
10301  int fmt;
10302  int cx;
10303  LPWSTR pszText;
10304  int cchTextMax;
10305  int iSubItem;
10306  int iImage;
10307  //if (_WIN32_IE >= 0x0300)
10308  int iOrder;
10309  //endif
10310  //if (_WIN32_WINNT >= 0x0600)
10311  //int cxMin;
10312  //int cxDefault;
10313  //int cxIdeal;
10314  //endif
10315 }
10316 version(Win32SansUnicode){
10317  alias LVCOLUMNA LVCOLUMN;
10318 }else{
10319  alias LVCOLUMNW LVCOLUMN;
10320 }
10321 alias LVCOLUMN* LPLVCOLUMN;
10322 alias LVCOLUMN LV_COLUMN;
10323 alias LV_COLUMN _LV_COLUMN;
10324 alias LV_COLUMN TLVCOLUMN;
10325 alias LV_COLUMN* PLVCOLUMN;
10326 
10327 struct LVITEMA 
10328 {
10329  UINT   mask;
10330  int iItem;
10331  int iSubItem;
10332  UINT   state;
10333  UINT   stateMask;
10334  LPSTR  pszText;
10335  int cchTextMax;
10336  int iImage;
10337  LPARAM lParam;
10338 //if (_WIN32_IE >= 0x0300)
10339  int iIndent;
10340 //endif
10341 //if (_WIN32_WINNT >= 0x560)
10342  int iGroupId;
10343  UINT cColumns; // tile view columns
10344  PUINT puColumns;
10345 //endif
10346 //if (_WIN32_WINNT >= 0x0600)
10347 // int* piColFmt;
10348 // int iGroup;
10349 //endif
10350 }
10351 struct LVITEMW 
10352 {
10353  UINT   mask;
10354  int iItem;
10355  int iSubItem;
10356  UINT   state;
10357  UINT   stateMask;
10358  LPWSTR  pszText;
10359  int cchTextMax;
10360  int iImage;
10361  LPARAM lParam;
10362 //if (_WIN32_IE >= 0x0300)
10363  int iIndent;
10364 //endif
10365 //if (_WIN32_WINNT >= 0x560)
10366  int iGroupId;
10367  UINT cColumns; // tile view columns
10368  PUINT puColumns;
10369 //endif
10370 //if (_WIN32_WINNT >= 0x0600)
10371 // int* piColFmt;
10372 // int iGroup;
10373 //endif
10374 }
10375 version(Win32SansUnicode){
10376  alias LVITEMA LVITEM;
10377 }else{
10378  alias LVITEMW LVITEM;
10379 }
10380 alias LVITEM* LPLVITEM;
10381 alias LVITEM LV_ITEM;
10382 
10383 alias LV_ITEM _LV_ITEM;
10384 alias LV_ITEM TLVITEM;
10385 alias LV_ITEM* PLVITEM;
10386 
10387 struct LV_DISPINFO
10388 {
10389  NMHDR hdr;
10390  LV_ITEM item;
10391 }
10392 
10393 alias LV_DISPINFO TAGLV_DISPINFO;
10394 alias LV_DISPINFO TLVDISPINFO;
10395 alias LV_DISPINFO* PLVDISPINFO;
10396 
10397 struct LV_FINDINFO
10398 {
10399  UINT flags;
10400  LPCTSTR psz;
10401  LPARAM lParam;
10402  POINT pt;
10403  UINT vkDirection;
10404 }
10405 
10406 alias LV_FINDINFO _LV_FINDINFO;
10407 alias LV_FINDINFO TLVFINDINFO;
10408 alias LV_FINDINFO* PLVFINDINFO;
10409 
10410 struct LVHITTESTINFO
10411 {
10412  POINT pt;
10413  UINT flags;
10414  int iItem;
10415  int iSubItem;
10416 //#if _WIN32_WINNT >= 0x0600
10417 // int iGroup;
10418 //#endif
10419 }
10420 
10421 alias LVHITTESTINFO LV_HITTESTINFO;
10422 
10423 alias LV_HITTESTINFO _LV_HITTESTINFO;
10424 alias LV_HITTESTINFO TLVHITTESTINFO;
10425 alias LV_HITTESTINFO* PLVHITTESTINFO;
10426 
10427 align(2) struct LV_KEYDOWN
10428 {
10429  NMHDR hdr;
10430  ushort wVKey;
10431  UINT flags;
10432 }
10433 
10434 alias LV_KEYDOWN TAGLV_KEYDOWN;
10435 alias LV_KEYDOWN TLVKEYDOWN;
10436 alias LV_KEYDOWN* PLVKEYDOWN;
10437 
10438 struct MAT2
10439 {
10440  FIXED eM11;
10441  FIXED eM12;
10442  FIXED eM21;
10443  FIXED eM22;
10444 }
10445 
10446 alias MAT2 _MAT2;
10447 alias MAT2 TMAT2;
10448 alias MAT2* PMAT2;
10449 
10450 struct MDICREATESTRUCT
10451 {
10452  LPCTSTR szClass;
10453  LPCTSTR szTitle;
10454  HANDLE hOwner;
10455  int x;
10456  int y;
10457  int cx;
10458  int cy;
10459  DWORD style;
10460  LPARAM lParam;
10461 }
10462 
10463 alias MDICREATESTRUCT* LPMDICREATESTRUCT;
10464 alias MDICREATESTRUCT TAGMDICREATESTRUCT;
10465 alias MDICREATESTRUCT TMDICREATESTRUCT;
10466 alias MDICREATESTRUCT* PMDICREATESTRUCT;
10467 
10468 struct MEASUREITEMSTRUCT
10469 {
10470  UINT CtlType;
10471  UINT CtlID;
10472  UINT itemID;
10473  UINT itemWidth;
10474  UINT itemHeight;
10475  DWORD itemData;
10476 }
10477 
10478 alias MEASUREITEMSTRUCT* LPMEASUREITEMSTRUCT;
10479 alias MEASUREITEMSTRUCT TAGMEASUREITEMSTRUCT;
10480 alias MEASUREITEMSTRUCT TMEASUREITEMSTRUCT;
10481 alias MEASUREITEMSTRUCT* PMEASUREITEMSTRUCT;
10482 
10483 struct MEMORY_BASIC_INFORMATION
10484 {
10485  PVOID BaseAddress;
10486  PVOID AllocationBase;
10487  DWORD AllocationProtect;
10488  DWORD RegionSize;
10489  DWORD State;
10490  DWORD Protect;
10491  DWORD _Type;
10492 }
10493 
10494 alias MEMORY_BASIC_INFORMATION* PMEMORY_BASIC_INFORMATION;
10495 alias MEMORY_BASIC_INFORMATION _MEMORY_BASIC_INFORMATION;
10496 alias MEMORY_BASIC_INFORMATION TMEMORYBASICINFORMATION;
10497 alias MEMORY_BASIC_INFORMATION* PMEMORYBASICINFORMATION;
10498 
10499 struct MEMORYSTATUS
10500 {
10501  DWORD dwLength;
10502  DWORD dwMemoryLoad;
10503  DWORD dwTotalPhys;
10504  DWORD dwAvailPhys;
10505  DWORD dwTotalPageFile;
10506  DWORD dwAvailPageFile;
10507  DWORD dwTotalVirtual;
10508  DWORD dwAvailVirtual;
10509 }
10510 
10511 alias MEMORYSTATUS* LPMEMORYSTATUS;
10512 alias MEMORYSTATUS _MEMORYSTATUS;
10513 alias MEMORYSTATUS TMEMORYSTATUS;
10514 alias MEMORYSTATUS* PMEMORYSTATUS;
10515 
10516 struct MENUEX_TEMPLATE_HEADER
10517 {
10518  ushort wVersion;
10519  ushort wOffset;
10520  DWORD dwHelpId;
10521 }
10522 
10523 alias MENUEX_TEMPLATE_HEADER TMENUXTEMPLATEHEADER;
10524 alias MENUEX_TEMPLATE_HEADER* PMENUXTEMPLATEHEADER;
10525 
10526 struct MENUEX_TEMPLATE_ITEM
10527 {
10528  DWORD dwType;
10529  DWORD dwState;
10530  UINT uId;
10531  ubyte bResInfo;
10532  WCHAR[1 + 0] szText;
10533  DWORD dwHelpId;
10534 }
10535 
10536 alias MENUEX_TEMPLATE_ITEM TMENUEXTEMPLATEITEM;
10537 alias MENUEX_TEMPLATE_ITEM* PMENUEXTEMPLATEITEM;
10538 
10539 /*
10540 * Feature in Windows.  The hbmpItem field requires Windows 4.10
10541 * or greater.  On Windows NT 4.0, passing in a larger struct size
10542 * in the cbSize field does nothing.  On Windows 95, the MENUITEMINFO
10543 * calls fail when the struct size is too large.  The fix is to ensure
10544 * that the correct struct size is used for the Windows platform.
10545 */
10546 struct MENUITEMINFOA
10547 {
10548  UINT cbSize;
10549  UINT fMask;
10550  UINT fType;    // used if MIIM_TYPE
10551  UINT fState;   // used if MIIM_STATE
10552  UINT wID;   // used if MIIM_ID
10553  HMENU   hSubMenu;    // used if MIIM_SUBMENU
10554  HBITMAP hbmpChecked; // used if MIIM_CHECKMARKS
10555  HBITMAP hbmpUnchecked;  // used if MIIM_CHECKMARKS
10556  DWORD   dwItemData;  // used if MIIM_DATA
10557  LPSTR   dwTypeData;  // used if MIIM_TYPE
10558  UINT cch;   // used if MIIM_TYPE
10559  HBITMAP hbmpItem;
10560 }
10561 alias MENUITEMINFOA* PMENUITEMINFOA, LPMENUITEMINFOA;
10562 struct MENUITEMINFOW
10563 {
10564  UINT cbSize;
10565  UINT fMask;
10566  UINT fType;    // used if MIIM_TYPE
10567  UINT fState;   // used if MIIM_STATE
10568  UINT wID;   // used if MIIM_ID
10569  HMENU   hSubMenu;    // used if MIIM_SUBMENU
10570  HBITMAP hbmpChecked; // used if MIIM_CHECKMARKS
10571  HBITMAP hbmpUnchecked;  // used if MIIM_CHECKMARKS
10572  DWORD   dwItemData;  // used if MIIM_DATA
10573  LPWSTR  dwTypeData;  // used if MIIM_TYPE
10574  UINT cch;   // used if MIIM_TYPE
10575  HBITMAP hbmpItem;
10576 }   alias MENUITEMINFOW* PMENUITEMINFOW, LPMENUITEMINFOW;
10577 version(Win32SansUnicode)
10578 {
10579  alias MENUITEMINFOA MENUITEMINFO;
10580 }
10581 else
10582 {
10583  alias MENUITEMINFOW MENUITEMINFO;
10584 }
10585 alias MENUITEMINFO * LPMENUITEMINFO;
10586 alias MENUITEMINFO * LPCMENUITEMINFO;
10587 alias MENUITEMINFO TAGMENUITEMINFO;
10588 alias MENUITEMINFO TMENUITEMINFO;
10589 alias MENUITEMINFO TMENUITEMINFOA;
10590 alias MENUITEMINFO* PMENUITEMINFO;
10591 
10592 struct MENUITEMTEMPLATE
10593 {
10594  ushort mtOption;
10595  ushort mtID;
10596  WCHAR[1 + 0] mtString;
10597 }
10598 
10599 alias MENUITEMTEMPLATE TMENUITEMTEMPLATE;
10600 alias MENUITEMTEMPLATE* PMENUITEMTEMPLATE;
10601 
10602 struct MENUITEMTEMPLATEHEADER
10603 {
10604  ushort versionNumber;
10605  ushort offset;
10606 }
10607 
10608 alias MENUITEMTEMPLATEHEADER TMENUITEMTEMPLATEHEADER;
10609 alias MENUITEMTEMPLATEHEADER* PMENUITEMTEMPLATEHEADER;
10610 
10611 struct MENUTEMPLATE
10612 {
10613 }
10614 
10615 alias MENUTEMPLATE* LPMENUTEMPLATE;
10616 alias MENUTEMPLATE TMENUTEMPLATE;
10617 alias MENUTEMPLATE* PMENUTEMPLATE;
10618 
10619 struct METAFILEPICT
10620 {
10621  LONG mm;
10622  LONG xExt;
10623  LONG yExt;
10624  HMETAFILE hMF;
10625 }
10626 
10627 alias METAFILEPICT* LPMETAFILEPICT;
10628 alias METAFILEPICT TAGMETAFILEPICT;
10629 alias METAFILEPICT TMETAFILEPICT;
10630 alias METAFILEPICT* PMETAFILEPICT;
10631 
10632 align(1) struct METAHEADER
10633 {
10634  ushort mtType;
10635  ushort mtHeaderSize;
10636  ushort mtVersion;
10637  DWORD mtSize;
10638  ushort mtNoObjects;
10639  DWORD mtMaxRecord;
10640  ushort mtNoParameters;
10641 }
10642 
10643 alias METAHEADER TAGMETAHEADER;
10644 alias METAHEADER TMETAHEADER;
10645 alias METAHEADER* PMETAHEADER;
10646 
10647 struct METARECORD
10648 {
10649  DWORD rdSize;
10650  ushort rdFunction;
10651  ushort[1 + 0] rdParm;
10652 }
10653 
10654 alias METARECORD* LPMETARECORD;
10655 alias METARECORD TAGMETARECORD;
10656 alias METARECORD TMETARECORD;
10657 alias METARECORD* PMETARECORD;
10658 
10659 struct MINIMIZEDMETRICS
10660 {
10661  UINT cbSize;
10662  int iWidth;
10663  int iHorzGap;
10664  int iVertGap;
10665  int iArrange;
10666 }
10667 
10668 alias MINIMIZEDMETRICS* LPMINIMIZEDMETRICS;
10669 alias MINIMIZEDMETRICS TAGMINIMIZEDMETRICS;
10670 alias MINIMIZEDMETRICS TMINIMIZEDMETRICS;
10671 alias MINIMIZEDMETRICS* PMINIMIZEDMETRICS;
10672 
10673 struct MINMAXINFO
10674 {
10675  POINT ptReserved;
10676  POINT ptMaxSize;
10677  POINT ptMaxPosition;
10678  POINT ptMinTrackSize;
10679  POINT ptMaxTrackSize;
10680 }
10681 
10682 alias MINMAXINFO TAGMINMAXINFO;
10683 alias MINMAXINFO TMINMAXINFO;
10684 alias MINMAXINFO* PMINMAXINFO;
10685 
10686 struct MODEMDEVCAPS
10687 {
10688  DWORD dwActualSize;
10689  DWORD dwRequiredSize;
10690  DWORD dwDevSpecificOffset;
10691  DWORD dwDevSpecificSize;
10692  DWORD dwModemProviderVersion;
10693  DWORD dwModemManufacturerOffset;
10694  DWORD dwModemManufacturerSize;
10695  DWORD dwModemModelOffset;
10696  DWORD dwModemModelSize;
10697  DWORD dwModemVersionOffset;
10698  DWORD dwModemVersionSize;
10699  DWORD dwDialOptions;
10700  DWORD dwCallSetupFailTimer;
10701  DWORD dwInactivityTimeout;
10702  DWORD dwSpeakerVolume;
10703  DWORD dwSpeakerMode;
10704  DWORD dwModemOptions;
10705  DWORD dwMaxDTERate;
10706  DWORD dwMaxDCERate;
10707  ubyte[1 + 0] abVariablePortion;
10708 }
10709 
10710 alias MODEMDEVCAPS* LPMODEMDEVCAPS;
10711 alias MODEMDEVCAPS TMODEMDEVCAPS;
10712 alias MODEMDEVCAPS* PMODEMDEVCAPS;
10713 alias MODEMDEVCAPS MODEMDEVCAPS_TAG;
10714 
10715 struct MODEMSETTINGS
10716 {
10717  DWORD dwActualSize;
10718  DWORD dwRequiredSize;
10719  DWORD dwDevSpecificOffset;
10720  DWORD dwDevSpecificSize;
10721  DWORD dwCallSetupFailTimer;
10722  DWORD dwInactivityTimeout;
10723  DWORD dwSpeakerVolume;
10724  DWORD dwSpeakerMode;
10725  DWORD dwPreferredModemOptions;
10726  DWORD dwNegotiatedModemOptions;
10727  DWORD dwNegotiatedDCERate;
10728  ubyte[1 + 0] abVariablePortion;
10729 }
10730 
10731 alias MODEMSETTINGS* LPMODEMSETTINGS;
10732 alias MODEMSETTINGS TMODEMSETTINGS;
10733 alias MODEMSETTINGS* PMODEMSETTINGS;
10734 alias MODEMSETTINGS MODEMSETTINGS_TAG;
10735 
10736 struct MONCBSTRUCT
10737 {
10738  UINT cb;
10739  DWORD dwTime;
10740  HANDLE hTask;
10741  DWORD dwRet;
10742  UINT wType;
10743  UINT wFmt;
10744  HCONV hConv;
10745  HSZ hsz1;
10746  HSZ hsz2;
10747  HDDEDATA hData;
10748  DWORD dwData1;
10749  DWORD dwData2;
10750  CONVCONTEXT cc;
10751  DWORD cbData;
10752  DWORD[1 + 7] Data;
10753 }
10754 
10755 alias MONCBSTRUCT TAGMONCBSTRUCT;
10756 alias MONCBSTRUCT TMONCBSTRUCT;
10757 alias MONCBSTRUCT* PMONCBSTRUCT;
10758 
10759 struct MONCONVSTRUCT
10760 {
10761  UINT cb;
10762  WINBOOL fConnect;
10763  DWORD dwTime;
10764  HANDLE hTask;
10765  HSZ hszSvc;
10766  HSZ hszTopic;
10767  HCONV hConvClient;
10768  HCONV hConvServer;
10769 }
10770 
10771 alias MONCONVSTRUCT TAGMONCONVSTRUCT;
10772 alias MONCONVSTRUCT TMONCONVSTRUCT;
10773 alias MONCONVSTRUCT* PMONCONVSTRUCT;
10774 
10775 struct MONERRSTRUCT
10776 {
10777  UINT cb;
10778  UINT wLastError;
10779  DWORD dwTime;
10780  HANDLE hTask;
10781 }
10782 
10783 alias MONERRSTRUCT TAGMONERRSTRUCT;
10784 alias MONERRSTRUCT TMONERRSTRUCT;
10785 alias MONERRSTRUCT* PMONERRSTRUCT;
10786 
10787 struct MONHSZSTRUCT
10788 {
10789  UINT cb;
10790  WINBOOL fsAction;
10791  DWORD dwTime;
10792  HSZ hsz;
10793  HANDLE hTask;
10794  TCHAR[1 + 0] str;
10795 }
10796 
10797 alias MONHSZSTRUCT TAGMONHSZSTRUCT;
10798 alias MONHSZSTRUCT TMONHSZSTRUCT;
10799 alias MONHSZSTRUCT* PMONHSZSTRUCT;
10800 
10801 struct MONITOR_INFO_1
10802 {
10803  LPTSTR pName;
10804 }
10805 
10806 alias MONITOR_INFO_1 _MONITOR_INFO_1;
10807 alias MONITOR_INFO_1 TMONITORINFO1;
10808 alias MONITOR_INFO_1* PMONITORINFO1;
10809 
10810 struct MONITOR_INFO_2
10811 {
10812  LPTSTR pName;
10813  LPTSTR pEnvironment;
10814  LPTSTR pDLLName;
10815 }
10816 
10817 alias MONITOR_INFO_2 _MONITOR_INFO_2;
10818 alias MONITOR_INFO_2 TMONITORINFO2;
10819 alias MONITOR_INFO_2* PMONITORINFO2;
10820 
10821 struct MONLINKSTRUCT
10822 {
10823  UINT cb;
10824  DWORD dwTime;
10825  HANDLE hTask;
10826  WINBOOL fEstablished;
10827  WINBOOL fNoData;
10828  HSZ hszSvc;
10829  HSZ hszTopic;
10830  HSZ hszItem;
10831  UINT wFmt;
10832  WINBOOL fServer;
10833  HCONV hConvServer;
10834  HCONV hConvClient;
10835 }
10836 
10837 alias MONLINKSTRUCT TAGMONLINKSTRUCT;
10838 alias MONLINKSTRUCT TMONLINKSTRUCT;
10839 alias MONLINKSTRUCT* PMONLINKSTRUCT;
10840 
10841 struct MONMSGSTRUCT
10842 {
10843  UINT cb;
10844  HWND hwndTo;
10845  DWORD dwTime;
10846  HANDLE hTask;
10847  UINT wMsg;
10848  WPARAM wParam;
10849  LPARAM lParam;
10850  DDEML_MSG_HOOK_DATA dmhd;
10851 }
10852 
10853 alias MONMSGSTRUCT TAGMONMSGSTRUCT;
10854 alias MONMSGSTRUCT TMONMSGSTRUCT;
10855 alias MONMSGSTRUCT* PMONMSGSTRUCT;
10856 
10857 struct MOUSEHOOKSTRUCT
10858 {
10859  POINT pt;
10860  HWND hwnd;
10861  UINT wHitTestCode;
10862  DWORD dwExtraInfo;
10863 }
10864 
10865 alias MOUSEHOOKSTRUCT* LPMOUSEHOOKSTRUCT;
10866 alias MOUSEHOOKSTRUCT TAGMOUSEHOOKSTRUCT;
10867 alias MOUSEHOOKSTRUCT TMOUSEHOOKSTRUCT;
10868 alias MOUSEHOOKSTRUCT* PMOUSEHOOKSTRUCT;
10869 
10870 struct MOUSEKEYS
10871 {
10872  DWORD cbSize;
10873  DWORD dwFlags;
10874  DWORD iMaxSpeed;
10875  DWORD iTimeToMaxSpeed;
10876  DWORD iCtrlSpeed;
10877  DWORD dwReserved1;
10878  DWORD dwReserved2;
10879 }
10880 
10881 alias MOUSEKEYS TMOUSEKEYS;
10882 alias MOUSEKEYS* PMOUSEKEYS;
10883 
10884 struct MSG
10885 {
10886  HWND hwnd;
10887  UINT message;
10888  WPARAM wParam;
10889  LPARAM lParam;
10890  DWORD time;
10891  POINT pt;
10892 }
10893 
10894 alias MSG* LPMSG;
10895 alias MSG TAGMSG;
10896 alias MSG TMSG;
10897 alias MSG* PMSG;
10898 extern(Windows){
10899 alias void function(LPHELPINFO) MSGBOXCALLBACK;
10900 }
10901 alias MSGBOXCALLBACK TMSGBOXCALLBACK;
10902 
10903 struct MSGBOXPARAMS
10904 {
10905  UINT cbSize;
10906  HWND hwndOwner;
10907  HINST hInstance;
10908  LPCSTR lpszText;
10909  LPCSTR lpszCaption;
10910  DWORD dwStyle;
10911  LPCSTR lpszIcon;
10912  DWORD dwContextHelpId;
10913  MSGBOXCALLBACK lpfnMsgBoxCallback;
10914  DWORD dwLanguageId;
10915 }
10916 
10917 alias MSGBOXPARAMS* LPMSGBOXPARAMS;
10918 alias MSGBOXPARAMS TMSGBOXPARAMS;
10919 alias MSGBOXPARAMS TMSGBOXPARAMSA;
10920 alias MSGBOXPARAMS* PMSGBOXPARAMS;
10921 
10922 struct MSGFILTER
10923 {
10924  NMHDR nmhdr;
10925  UINT msg;
10926  WPARAM wParam;
10927  LPARAM lParam;
10928 }
10929 
10930 alias MSGFILTER _MSGFILTER;
10931 alias MSGFILTER TMSGFILTER;
10932 alias MSGFILTER* PMSGFILTER;
10933 
10934 struct MULTIKEYHELP
10935 {
10936  DWORD mkSize;
10937  TCHAR mkKeylist;
10938  TCHAR[1 + 0] szKeyphrase;
10939 }
10940 
10941 alias MULTIKEYHELP TAGMULTIKEYHELP;
10942 alias MULTIKEYHELP TMULTIKEYHELP;
10943 alias MULTIKEYHELP* PMULTIKEYHELP;
10944 
10945 struct NAME_BUFFER
10946 {
10947  UCHAR[1 + NCBNAMSZ-1] name;
10948  UCHAR name_num;
10949  UCHAR name_flags;
10950 }
10951 
10952 alias NAME_BUFFER _NAME_BUFFER;
10953 alias NAME_BUFFER TNAMEBUFFER;
10954 alias NAME_BUFFER* PNAMEBUFFER;
10955 alias _NCB* P_NCB;
10956 
10957 struct NCB
10958 {
10959  UCHAR ncb_command;
10960  UCHAR ncb_retcode;
10961  UCHAR ncb_lsn;
10962  UCHAR ncb_num;
10963  PUCHAR ncb_buffer;
10964  ushort ncb_length;
10965  UCHAR[1 + NCBNAMSZ-1] ncb_callname;
10966  UCHAR[1 + NCBNAMSZ-1] ncb_name;
10967  UCHAR ncb_rto;
10968  UCHAR ncb_sto;
10969  POINTER ncb_post;
10970  UCHAR ncb_lana_num;
10971  UCHAR ncb_cmd_cplt;
10972  UCHAR[1 + 9] ncb_reserve;
10973  HANDLE ncb_event;
10974 }
10975 
10976 alias NCB _NCB;
10977 alias NCB TNCB;
10978 alias NCB* PNCB;
10979 
10980 struct NCCALCSIZE_PARAMS
10981 {
10982  RECT[1 + 2] rgrc;
10983  PWINDOWPOS lppos;
10984 }
10985 
10986 alias NCCALCSIZE_PARAMS _NCCALCSIZE_PARAMS;
10987 alias NCCALCSIZE_PARAMS TNCCALCSIZEPARAMS;
10988 alias NCCALCSIZE_PARAMS* PNCCALCSIZEPARAMS;
10989 
10990 struct NDDESHAREINFO
10991 {
10992  LONG lRevision;
10993  LPTSTR lpszShareName;
10994  LONG lShareType;
10995  LPTSTR lpszAppTopicList;
10996  LONG fSharedFlag;
10997  LONG fService;
10998  LONG fStartAppFlag;
10999  LONG nCmdShow;
11000  LONG[1 + 1] qModifyId;
11001  LONG cNumItems;
11002  LPTSTR lpszItemList;
11003 }
11004 
11005 alias NDDESHAREINFO _NDDESHAREINFO;
11006 alias NDDESHAREINFO TNDDESHAREINFO;
11007 alias NDDESHAREINFO* PNDDESHAREINFO;
11008 
11009 struct NETRESOURCE
11010 {
11011  DWORD dwScope;
11012  DWORD dwType;
11013  DWORD dwDisplayType;
11014  DWORD dwUsage;
11015  LPTSTR lpLocalName;
11016  LPTSTR lpRemoteName;
11017  LPTSTR lpComment;
11018  LPTSTR lpProvider;
11019 }
11020 
11021 alias NETRESOURCE* LPNETRESOURCE;
11022 alias NETRESOURCE _NETRESOURCE;
11023 alias NETRESOURCE TNETRESOURCE;
11024 alias NETRESOURCE TNETRESOURCEA;
11025 alias NETRESOURCE* PNETRESOURCE;
11026 alias NETRESOURCE* PNETRESOURCEA;
11027 
11028 struct NEWCPLINFO
11029 {
11030  DWORD dwSize;
11031  DWORD dwFlags;
11032  DWORD dwHelpContext;
11033  LONG lData;
11034  HICON hIcon;
11035  TCHAR[1 + 31] szName;
11036  TCHAR[1 + 63] szInfo;
11037  TCHAR[1 + 127] szHelpFile;
11038 }
11039 
11040 alias NEWCPLINFO TAGNEWCPLINFO;
11041 alias NEWCPLINFO TNEWCPLINFO;
11042 alias NEWCPLINFO* PNEWCPLINFO;
11043 
11044 struct NEWTEXTMETRICA 
11045 {
11046  LONG   tmHeight;
11047  LONG   tmAscent;
11048  LONG   tmDescent;
11049  LONG   tmInternalLeading;
11050  LONG   tmExternalLeading;
11051  LONG   tmAveCharWidth;
11052  LONG   tmMaxCharWidth;
11053  LONG   tmWeight;
11054  LONG   tmOverhang;
11055  LONG   tmDigitizedAspectX;
11056  LONG   tmDigitizedAspectY;
11057  BYTE  tmFirstChar;
11058  BYTE  tmLastChar;
11059  BYTE  tmDefaultChar;
11060  BYTE  tmBreakChar;
11061  BYTE   tmItalic;
11062  BYTE   tmUnderlined;
11063  BYTE   tmStruckOut;
11064  BYTE   tmPitchAndFamily;
11065  BYTE   tmCharSet;
11066  DWORD  ntmFlags;
11067  UINT   ntmSizeEM;
11068  UINT   ntmCellHeight;
11069  UINT   ntmAvgWidth;
11070 }
11071 struct NEWTEXTMETRICW 
11072 {
11073  LONG   tmHeight;
11074  LONG   tmAscent;
11075  LONG   tmDescent;
11076  LONG   tmInternalLeading;
11077  LONG   tmExternalLeading;
11078  LONG   tmAveCharWidth;
11079  LONG   tmMaxCharWidth;
11080  LONG   tmWeight;
11081  LONG   tmOverhang;
11082  LONG   tmDigitizedAspectX;
11083  LONG   tmDigitizedAspectY;
11084  WCHAR  tmFirstChar;
11085  WCHAR  tmLastChar;
11086  WCHAR  tmDefaultChar;
11087  WCHAR  tmBreakChar;
11088  BYTE   tmItalic;
11089  BYTE   tmUnderlined;
11090  BYTE   tmStruckOut;
11091  BYTE   tmPitchAndFamily;
11092  BYTE   tmCharSet;
11093  DWORD  ntmFlags;
11094  UINT   ntmSizeEM;
11095  UINT   ntmCellHeight;
11096  UINT   ntmAvgWidth;
11097 }
11098 
11099 struct NEWTEXTMETRICEXA
11100 {
11101  NEWTEXTMETRICA  ntmentm;
11102  FONTSIGNATURE  ntmeFontSignature;
11103 }
11104 struct NEWTEXTMETRICEXW
11105 {
11106  NEWTEXTMETRICW  ntmentm;
11107  FONTSIGNATURE  ntmeFontSignature;
11108 }
11109 
11110 
11111 version(Win32SansUnicode)
11112 {
11113  alias NEWTEXTMETRICA NEWTEXTMETRIC;
11114  alias NEWTEXTMETRICEXA NEWTEXTMETRICEX;
11115 }
11116 else
11117 {
11118  alias NEWTEXTMETRICW NEWTEXTMETRIC;
11119  alias NEWTEXTMETRICEXW NEWTEXTMETRICEX;
11120 }
11121 
11122 alias NEWTEXTMETRIC TNEWTEXTMETRIC;
11123 alias NEWTEXTMETRIC* PNEWTEXTMETRIC;
11124 alias NEWTEXTMETRIC* LPNEWTEXTMETRIC;
11125 alias NEWTEXTMETRIC TAGNEWTEXTMETRIC;
11126 alias NEWTEXTMETRICEX TAGNEWTEXTMETRICEX;
11127 alias NEWTEXTMETRICEX TNEWTEXTMETRICEX;
11128 alias NEWTEXTMETRICEX* PNEWTEXTMETRICEX;
11129 
11130 struct NM_LISTVIEW
11131 {
11132  NMHDR hdr;
11133  int iItem;
11134  int iSubItem;
11135  UINT uNewState;
11136  UINT uOldState;
11137  UINT uChanged;
11138  POINT ptAction;
11139  LPARAM lParam;
11140 }
11141 
11142 alias NM_LISTVIEW TAGNM_LISTVIEW;
11143 alias NM_LISTVIEW TNMLISTVIEW;
11144 alias NM_LISTVIEW* PNMLISTVIEW;
11145 
11146 struct TVITEMA
11147 {
11148  UINT   mask;
11149  HTREEITEM hItem;
11150  UINT   state;
11151  UINT   stateMask;
11152  LPSTR  pszText;
11153  int    cchTextMax;
11154  int    iImage;
11155  int    iSelectedImage;
11156  int    cChildren;
11157  LPARAM lParam;
11158 }
11159 struct TVITEMW
11160 {
11161  UINT   mask;
11162  HTREEITEM hItem;
11163  UINT   state;
11164  UINT   stateMask;
11165  LPWSTR pszText;
11166  int    cchTextMax;
11167  int    iImage;
11168  int    iSelectedImage;
11169  int    cChildren;
11170  LPARAM lParam;
11171 }
11172 version(Win32SansUnicode)
11173 {
11174  alias TVITEMA TVITEM;
11175 }
11176 else
11177 {
11178  alias TVITEMW TVITEM;
11179 }
11180 alias TVITEM* LPTVITEM;
11181 alias TVITEM* LPTV_ITEM;
11182 alias TVITEM _TV_ITEM;
11183 alias TVITEM TTVITEM;
11184 alias TVITEM TV_ITEM;
11185 alias TVITEM* PTVITEM;
11186 
11187 struct TVITEMEXA {
11188  UINT   mask;
11189  HTREEITEM hItem;
11190  UINT   state;
11191  UINT   stateMask;
11192  LPSTR  pszText;
11193  int    cchTextMax;
11194  int    iImage;
11195  int    iSelectedImage;
11196  int    cChildren;
11197  LPARAM lParam;
11198  int    iIntegral;
11199 //#if (_WIN32_IE >= 0x0600)
11200 // UINT   uStateEx;
11201 // HWND   hwnd;
11202 // int    iExpandedImage;
11203 //#endif
11204 }
11205 struct TVITEMEXW {
11206  UINT   mask;
11207  HTREEITEM hItem;
11208  UINT   state;
11209  UINT   stateMask;
11210  LPWSTR pszText;
11211  int    cchTextMax;
11212  int    iImage;
11213  int    iSelectedImage;
11214  int    cChildren;
11215  LPARAM lParam;
11216  int    iIntegral;
11217 //#if (_WIN32_IE >= 0x0600)
11218 // UINT   uStateEx;
11219 // HWND   hwnd;
11220 // int    iExpandedImage;
11221 //#endif
11222 }
11223 version(Win32SansUnicode)
11224 {
11225  alias TVITEMEXA TVITEMEX;
11226 }
11227 else
11228 {
11229  alias TVITEMEXW TVITEMEX;
11230 }
11231 alias TVITEMEX * LPTVITEMEX;
11232 
11233 struct NMTREEVIEW
11234 {
11235  NMHDR hdr;
11236  UINT action;
11237  TVITEM itemOld;
11238  TVITEM itemNew;
11239  POINT ptDrag;
11240 }
11241 alias NMTREEVIEW* PNMTREEVIEW;
11242 alias NMTREEVIEW* LPNMTREEVIEW;
11243 alias NMTREEVIEW  NM_TREEVIEW;
11244 alias NM_TREEVIEW* LPNM_TREEVIEW;
11245 alias NM_TREEVIEW _NM_TREEVIEW;
11246 alias NM_TREEVIEW TNMTREEVIEW;
11247 
11248 struct NM_UPDOWNW
11249 {
11250  NMHDR hdr;
11251  int iPos;
11252  int iDelta;
11253 }
11254 
11255 alias NM_UPDOWNW _NM_UPDOWN;
11256 alias NM_UPDOWNW TNMUPDOWN;
11257 alias NM_UPDOWNW* PNMUPDOWN;
11258 alias NM_UPDOWNW NMUPDOWN;
11259 
11260 struct NONCLIENTMETRICSA 
11261 {
11262  int cbSize;
11263  int iBorderWidth;
11264  int iScrollWidth;
11265  int iScrollHeight;
11266  int iCaptionWidth;
11267  int iCaptionHeight;
11268  LOGFONTA lfCaptionFont;
11269  int iSmCaptionWidth;
11270  int iSmCaptionHeight;
11271  LOGFONTA lfSmCaptionFont;
11272  int iMenuWidth;
11273  int iMenuHeight;
11274  LOGFONTA lfMenuFont;
11275  LOGFONTA lfStatusFont;
11276  LOGFONTA lfMessageFont;
11277 //if (WINVER >= 0x0600)
11278 //  int iPaddedBorderWidth;
11279 //endif 
11280 
11281 }
11282 struct NONCLIENTMETRICSW 
11283 {
11284  int cbSize;
11285  int iBorderWidth;
11286  int iScrollWidth;
11287  int iScrollHeight;
11288  int iCaptionWidth;
11289  int iCaptionHeight;
11290  LOGFONTW lfCaptionFont;
11291  int iSmCaptionWidth;
11292  int iSmCaptionHeight;
11293  LOGFONTW lfSmCaptionFont;
11294  int iMenuWidth;
11295  int iMenuHeight;
11296  LOGFONTW lfMenuFont;
11297  LOGFONTW lfStatusFont;
11298  LOGFONTW lfMessageFont;
11299 //if (WINVER >= 0x0600)
11300 //  int iPaddedBorderWidth;
11301 //endif 
11302 }
11303 version(Win32SansUnicode)
11304 {
11305  alias NONCLIENTMETRICSA NONCLIENTMETRICS;
11306 }
11307 else
11308 {
11309  alias NONCLIENTMETRICSW NONCLIENTMETRICS;
11310 }
11311 alias NONCLIENTMETRICS* LPNONCLIENTMETRICS;
11312 alias NONCLIENTMETRICS TAGNONCLIENTMETRICS;
11313 alias NONCLIENTMETRICS TNONCLIENTMETRICS;
11314 alias NONCLIENTMETRICS* PNONCLIENTMETRICS;
11315 
11316 struct SERVICE_ADDRESS
11317 {
11318  DWORD dwAddressType;
11319  DWORD dwAddressFlags;
11320  DWORD dwAddressLength;
11321  DWORD dwPrincipalLength;
11322  ubyte* lpAddress;
11323  ubyte* lpPrincipal;
11324 }
11325 
11326 alias SERVICE_ADDRESS _SERVICE_ADDRESS;
11327 alias SERVICE_ADDRESS TSERVICEADDRESS;
11328 alias SERVICE_ADDRESS* PSERVICEADDRESS;
11329 
11330 struct SERVICE_ADDRESSES
11331 {
11332  DWORD dwAddressCount;
11333  SERVICE_ADDRESS[1 + 0] Addresses;
11334 }
11335 
11336 alias SERVICE_ADDRESSES* LPSERVICE_ADDRESSES;
11337 alias SERVICE_ADDRESSES _SERVICE_ADDRESSES;
11338 alias SERVICE_ADDRESSES TSERVICEADDRESSES;
11339 alias SERVICE_ADDRESSES* PSERVICEADDRESSES;
11340 
11341 align(1) struct __GUID
11342 {
11343 
11344  union
11345  {
11346   struct
11347   {
11348    uint Data1;
11349    ushort Data2;
11350    ushort Data3;
11351    ubyte[1 + 7] Data4;
11352   }
11353   struct
11354   {
11355    uint D1;
11356    ushort D2;
11357    ushort D3;
11358    ubyte[1 + 7] D4;
11359   }
11360  }
11361 }
11362 
11363 alias __GUID* LPGUID;
11364 alias __GUID _GUID;
11365 alias __GUID GUID;
11366 alias __GUID TGUID;
11367 alias __GUID* PGUID;
11368 alias __GUID __CLSID;
11369 alias __CLSID* LPCLSID;
11370 alias __CLSID TCLSID;
11371 alias __CLSID* PCLSID;
11372 
11373 struct SERVICE_INFO
11374 {
11375  LPGUID lpServiceType;
11376  LPTSTR lpServiceName;
11377  LPTSTR lpComment;
11378  LPTSTR lpLocale;
11379  DWORD dwDisplayHint;
11380  DWORD dwVersion;
11381  DWORD dwTime;
11382  LPTSTR lpMachineName;
11383  LPSERVICE_ADDRESSES lpServiceAddress;
11384  BLOB ServiceSpecificInfo;
11385 }
11386 
11387 alias SERVICE_INFO _SERVICE_INFO;
11388 alias SERVICE_INFO TSERVICEINFO;
11389 alias SERVICE_INFO* PSERVICEINFO;
11390 
11391 struct NS_SERVICE_INFO
11392 {
11393  DWORD dwNameSpace;
11394  SERVICE_INFO ServiceInfo;
11395 }
11396 
11397 alias NS_SERVICE_INFO _NS_SERVICE_INFO;
11398 alias NS_SERVICE_INFO TNSSERVICEINFO;
11399 alias NS_SERVICE_INFO* PNSSERVICEINFO;
11400 
11401 struct NUMBERFMT
11402 {
11403  UINT NumDigits;
11404  UINT LeadingZero;
11405  UINT Grouping;
11406  LPTSTR lpDecimalSep;
11407  LPTSTR lpThousandSep;
11408  UINT NegativeOrder;
11409 }
11410 
11411 alias NUMBERFMT _NUMBERFMT;
11412 alias NUMBERFMT TNUMBERFMT;
11413 alias NUMBERFMT* PNUMBERFMT;
11414 
11415 struct OFSTRUCT
11416 {
11417  ubyte cBytes;
11418  ubyte fFixedDisk;
11419  ushort nErrCode;
11420  ushort Reserved1;
11421  ushort Reserved2;
11422  char[1 + OFS_MAXPATHNAME-1] szPathName;
11423 }
11424 
11425 alias OFSTRUCT* LPOFSTRUCT;
11426 alias OFSTRUCT _OFSTRUCT;
11427 alias OFSTRUCT TOFSTRUCT;
11428 alias OFSTRUCT* POFSTRUCT;
11429 
11430 struct OPENFILENAME
11431 {
11432  DWORD lStructSize;
11433  HWND hwndOwner;
11434  HINST hInstance;
11435  LPCTSTR lpstrFilter;
11436  LPTSTR lpstrCustomFilter;
11437  DWORD nMaxCustFilter;
11438  DWORD nFilterIndex;
11439  LPTSTR lpstrFile;
11440  DWORD nMaxFile;
11441  LPTSTR lpstrFileTitle;
11442  DWORD nMaxFileTitle;
11443  LPCTSTR lpstrInitialDir;
11444  LPCTSTR lpstrTitle;
11445  DWORD Flags;
11446  ushort nFileOffset;
11447  ushort nFileExtension;
11448  LPCTSTR lpstrDefExt;
11449  DWORD lCustData;
11450  LPOFNHOOKPROC lpfnHook;
11451  LPCTSTR lpTemplateName;
11452 //if (_WIN32_WINNT >= 0x0500)
11453   void *  pvReserved;
11454   DWORD   dwReserved;
11455   DWORD   FlagsEx;
11456 //endif // (_WIN32_WINNT >= 0x0500)
11457 }
11458 
11459 alias OPENFILENAME* LPOPENFILENAME;
11460 alias OPENFILENAME TOPENFILENAME;
11461 alias OPENFILENAME* POPENFILENAME;
11462 alias OPENFILENAME TAGOFN;
11463 alias OPENFILENAME TOFN;
11464 alias OPENFILENAME* POFN;
11465 
11466 struct OFNOTIFY
11467 {
11468  NMHDR hdr;
11469  LPOPENFILENAME lpOFN;
11470  LPTSTR pszFile;
11471 }
11472 
11473 alias OFNOTIFY* LPOFNOTIFY;
11474 alias OFNOTIFY _OFNOTIFY;
11475 alias OFNOTIFY TOFNOTIFY;
11476 alias OFNOTIFY* POFNOTIFY;
11477 
11478 struct OSVERSIONINFOA
11479 {
11480  DWORD dwOSVersionInfoSize;
11481  DWORD dwMajorVersion;
11482  DWORD dwMinorVersion;
11483  DWORD dwBuildNumber;
11484  DWORD dwPlatformId;
11485  CHAR[ 128 ] szCSDVersion;
11486 }
11487 alias OSVERSIONINFOA* POSVERSIONINFOA, LPOSVERSIONINFOA;
11488 
11489 struct OSVERSIONINFOW
11490 {
11491  DWORD dwOSVersionInfoSize;
11492  DWORD dwMajorVersion;
11493  DWORD dwMinorVersion;
11494  DWORD dwBuildNumber;
11495  DWORD dwPlatformId;
11496  WCHAR[ 128 ] szCSDVersion;
11497 }
11498 alias OSVERSIONINFOW* POSVERSIONINFOW, LPOSVERSIONINFOW;
11499 version(Win32SansUnicode)
11500 {
11501  alias OSVERSIONINFOA OSVERSIONINFO;
11502 }
11503 else
11504 {
11505  alias OSVERSIONINFOW OSVERSIONINFO;
11506 }
11507 alias OSVERSIONINFO* LPOSVERSIONINFO;
11508 alias OSVERSIONINFO _OSVERSIONINFO;
11509 alias OSVERSIONINFO TOSVERSIONINFO;
11510 alias OSVERSIONINFO* POSVERSIONINFO;
11511 
11512 struct TEXTMETRICA 
11513 {
11514  LONG tmHeight;
11515  LONG tmAscent;
11516  LONG tmDescent;
11517  LONG tmInternalLeading;
11518  LONG tmExternalLeading;
11519  LONG tmAveCharWidth;
11520  LONG tmMaxCharWidth;
11521  LONG tmWeight;
11522  LONG tmOverhang;
11523  LONG tmDigitizedAspectX;
11524  LONG tmDigitizedAspectY;
11525 
11526  BYTE tmFirstChar;
11527  BYTE tmLastChar;
11528  BYTE tmDefaultChar;
11529  BYTE tmBreakChar;
11530 
11531  BYTE tmItalic;
11532  BYTE tmUnderlined;
11533  BYTE tmStruckOut;
11534  BYTE tmPitchAndFamily;
11535  BYTE tmCharSet;
11536 }
11537 struct TEXTMETRICW {
11538  LONG tmHeight;
11539  LONG tmAscent;
11540  LONG tmDescent;
11541  LONG tmInternalLeading;
11542  LONG tmExternalLeading;
11543  LONG tmAveCharWidth;
11544  LONG tmMaxCharWidth;
11545  LONG tmWeight;
11546  LONG tmOverhang;
11547  LONG tmDigitizedAspectX;
11548  LONG tmDigitizedAspectY;
11549 
11550  WCHAR tmFirstChar;
11551  WCHAR tmLastChar;
11552  WCHAR tmDefaultChar;
11553  WCHAR tmBreakChar;
11554 
11555  BYTE tmItalic;
11556  BYTE tmUnderlined;
11557  BYTE tmStruckOut;
11558  BYTE tmPitchAndFamily;
11559  BYTE tmCharSet;
11560 }
11561 version(Win32SansUnicode)
11562 {
11563  alias TEXTMETRICA TEXTMETRIC;
11564 }
11565 else
11566 {
11567  alias TEXTMETRICW TEXTMETRIC;
11568 }
11569 alias TEXTMETRIC* LPTEXTMETRIC;
11570 alias TEXTMETRIC TAGTEXTMETRIC;
11571 alias TEXTMETRIC TTEXTMETRIC;
11572 alias TEXTMETRIC* PTEXTMETRIC;
11573 
11574 struct OUTLINETEXTMETRICA
11575 {
11576  UINT    otmSize;
11577  TEXTMETRICA otmTextMetrics;
11578  BYTE    otmFiller;
11579  PANOSE  otmPanoseNumber;
11580  UINT    otmfsSelection;
11581  UINT    otmfsType;
11582  int  otmsCharSlopeRise;
11583  int  otmsCharSlopeRun;
11584  int  otmItalicAngle;
11585  UINT    otmEMSquare;
11586  int  otmAscent;
11587  int  otmDescent;
11588  UINT    otmLineGap;
11589  UINT    otmsCapEmHeight;
11590  UINT    otmsXHeight;
11591  RECT    otmrcFontBox;
11592  int  otmMacAscent;
11593  int  otmMacDescent;
11594  UINT    otmMacLineGap;
11595  UINT    otmusMinimumPPEM;
11596  POINT   otmptSubscriptSize;
11597  POINT   otmptSubscriptOffset;
11598  POINT   otmptSuperscriptSize;
11599  POINT   otmptSuperscriptOffset;
11600  UINT    otmsStrikeoutSize;
11601  int  otmsStrikeoutPosition;
11602  int  otmsUnderscoreSize;
11603  int  otmsUnderscorePosition;
11604  PSTR    otmpFamilyName;
11605  PSTR    otmpFaceName;
11606  PSTR    otmpStyleName;
11607  PSTR    otmpFullName;
11608 }
11609 
11610 struct OUTLINETEXTMETRICW
11611 {
11612  UINT    otmSize;
11613  TEXTMETRICW otmTextMetrics;
11614  BYTE    otmFiller;
11615  PANOSE  otmPanoseNumber;
11616  UINT    otmfsSelection;
11617  UINT    otmfsType;
11618  int  otmsCharSlopeRise;
11619  int  otmsCharSlopeRun;
11620  int  otmItalicAngle;
11621  UINT    otmEMSquare;
11622  int  otmAscent;
11623  int  otmDescent;
11624  UINT    otmLineGap;
11625  UINT    otmsCapEmHeight;
11626  UINT    otmsXHeight;
11627  RECT    otmrcFontBox;
11628  int  otmMacAscent;
11629  int  otmMacDescent;
11630  UINT    otmMacLineGap;
11631  UINT    otmusMinimumPPEM;
11632  POINT   otmptSubscriptSize;
11633  POINT   otmptSubscriptOffset;
11634  POINT   otmptSuperscriptSize;
11635  POINT   otmptSuperscriptOffset;
11636  UINT    otmsStrikeoutSize;
11637  int  otmsStrikeoutPosition;
11638  int  otmsUnderscoreSize;
11639  int  otmsUnderscorePosition;
11640  PSTR    otmpFamilyName;
11641  PSTR    otmpFaceName;
11642  PSTR    otmpStyleName;
11643  PSTR    otmpFullName;
11644 }
11645 
11646 alias OUTLINETEXTMETRIC* LPOUTLINETEXTMETRIC;
11647 alias OUTLINETEXTMETRIC _OUTLINETEXTMETRIC;
11648 alias OUTLINETEXTMETRIC TOUTLINETEXTMETRIC;
11649 alias OUTLINETEXTMETRIC* POUTLINETEXTMETRIC;
11650 version(Win32SansUnicode)
11651 {
11652  alias OUTLINETEXTMETRICA OUTLINETEXTMETRIC;
11653  alias OUTLINETEXTMETRICA* LPOUTLINETEXTMETRICA;
11654 }
11655 else
11656 {
11657  alias OUTLINETEXTMETRICW OUTLINETEXTMETRIC;
11658  alias OUTLINETEXTMETRICW* LPOUTLINETEXTMETRICW;
11659 }
11660 
11661 struct OVERLAPPED
11662 {
11663  DWORD Internal;
11664  DWORD InternalHigh;
11665  DWORD Offset;
11666  DWORD OffsetHigh;
11667  HANDLE hEvent;
11668 }
11669 
11670 alias OVERLAPPED* LPOVERLAPPED;
11671 alias OVERLAPPED _OVERLAPPED;
11672 alias OVERLAPPED TOVERLAPPED;
11673 alias OVERLAPPED* POVERLAPPED;
11674 
11675 struct OVERLAPPED_ENTRY
11676 {
11677  ULONG_PTR lpCompletionKey;
11678  LPOVERLAPPED lpOverlapped;
11679  ULONG_PTR Internal;
11680  DWORD  dwNumberofBytesTransferred;
11681 }
11682 
11683 struct TPAGESETUPDLG
11684 {
11685  DWORD lStructSize;
11686  HWND hwndOwner;
11687  HGLOBAL hDevMode;
11688  HGLOBAL hDevNames;
11689  DWORD Flags;
11690  POINT ptPaperSize;
11691  RECT rtMinMargin;
11692  RECT rtMargin;
11693  HINST hInstance;
11694  LPARAM lCustData;
11695  LPPAGESETUPHOOK lpfnPageSetupHook;
11696  LPPAGEPAINTHOOK lpfnPagePaintHook;
11697  LPCTSTR lpPageSetupTemplateName;
11698  HGLOBAL hPageSetupTemplate;
11699 }
11700 
11701 alias TPAGESETUPDLG PAGESETUPDLG;
11702 alias TPAGESETUPDLG* LPPAGESETUPDLG;
11703 alias TPAGESETUPDLG* PPAGESETUPDLG;
11704 alias TPAGESETUPDLG TAGPSD;
11705 alias TPAGESETUPDLG TPSD;
11706 alias TPAGESETUPDLG* PPSD;
11707 
11708 struct PAINTSTRUCT
11709 {
11710  HDC hdc;
11711  WINBOOL fErase;
11712  RECT rcPaint;
11713  WINBOOL fRestore;
11714  WINBOOL fIncUpdate;
11715  ubyte[1 + 31] rgbReserved;
11716 }
11717 
11718 alias PAINTSTRUCT* LPPAINTSTRUCT;
11719 alias PAINTSTRUCT TAGPAINTSTRUCT;
11720 alias PAINTSTRUCT TPAINTSTRUCT;
11721 alias PAINTSTRUCT* PPAINTSTRUCT;
11722 
11723 struct PARAFORMAT
11724 {
11725  UINT cbSize;
11726  DWORD dwMask;
11727  ushort wNumbering;
11728  ushort wReserved;
11729  LONG dxStartIndent;
11730  LONG dxRightIndent;
11731  LONG dxOffset;
11732  ushort wAlignment;
11733  SHORT cTabCount;
11734  LONG[1 + MAX_TAB_STOPS-1] rgxTabs;
11735 }
11736 
11737 alias PARAFORMAT _PARAFORMAT;
11738 alias PARAFORMAT TPARAFORMAT;
11739 alias PARAFORMAT* PPARAFORMAT;
11740 
11741 struct PERF_COUNTER_BLOCK
11742 {
11743  DWORD ByteLength;
11744 }
11745 
11746 alias PERF_COUNTER_BLOCK _PERF_COUNTER_BLOCK;
11747 alias PERF_COUNTER_BLOCK TPERFCOUNTERBLOCK;
11748 alias PERF_COUNTER_BLOCK* PPERFCOUNTERBLOCK;
11749 
11750 struct PERF_COUNTER_DEFINITION
11751 {
11752  DWORD ByteLength;
11753  DWORD CounterNameTitleIndex;
11754  LPWSTR CounterNameTitle;
11755  DWORD CounterHelpTitleIndex;
11756  LPWSTR CounterHelpTitle;
11757  DWORD DefaultScale;
11758  DWORD DetailLevel;
11759  DWORD CounterType;
11760  DWORD CounterSize;
11761  DWORD CounterOffset;
11762 }
11763 
11764 alias PERF_COUNTER_DEFINITION _PERF_COUNTER_DEFINITION;
11765 alias PERF_COUNTER_DEFINITION TPERFCOUNTERDEFINITION;
11766 alias PERF_COUNTER_DEFINITION* PPERFCOUNTERDEFINITION;
11767 
11768 struct PERF_DATA_BLOCK
11769 {
11770  WCHAR[1 + 3] Signature;
11771  DWORD LittleEndian;
11772  DWORD Version;
11773  DWORD Revision;
11774  DWORD TotalByteLength;
11775  DWORD HeaderLength;
11776  DWORD NumObjectTypes;
11777  DWORD DefaultObject;
11778  SYSTEMTIME SystemTime;
11779  LARGE_INTEGER PerfTime;
11780  LARGE_INTEGER PerfFreq;
11781  LARGE_INTEGER PerfTime100nSec;
11782  DWORD SystemNameLength;
11783  DWORD SystemNameOffset;
11784 }
11785 
11786 alias PERF_DATA_BLOCK _PERF_DATA_BLOCK;
11787 alias PERF_DATA_BLOCK TPERFDATABLOCK;
11788 alias PERF_DATA_BLOCK* PPERFDATABLOCK;
11789 
11790 struct PERF_INSTANCE_DEFINITION
11791 {
11792  DWORD ByteLength;
11793  DWORD ParentObjectTitleIndex;
11794  DWORD ParentObjectInstance;
11795  DWORD UniqueID;
11796  DWORD NameOffset;
11797  DWORD NameLength;
11798 }
11799 
11800 alias PERF_INSTANCE_DEFINITION _PERF_INSTANCE_DEFINITION;
11801 alias PERF_INSTANCE_DEFINITION TPERFINSTANCEDEFINITION;
11802 alias PERF_INSTANCE_DEFINITION PPERFINSTANCEDEFINITION;
11803 
11804 struct PERF_OBJECT_TYPE
11805 {
11806  DWORD TotalByteLength;
11807  DWORD DefinitionLength;
11808  DWORD HeaderLength;
11809  DWORD ObjectNameTitleIndex;
11810  LPWSTR ObjectNameTitle;
11811  DWORD ObjectHelpTitleIndex;
11812  LPWSTR ObjectHelpTitle;
11813  DWORD DetailLevel;
11814  DWORD NumCounters;
11815  DWORD DefaultCounter;
11816  DWORD NumInstances;
11817  DWORD CodePage;
11818  LARGE_INTEGER PerfTime;
11819  LARGE_INTEGER PerfFreq;
11820 }
11821 
11822 alias PERF_OBJECT_TYPE _PERF_OBJECT_TYPE;
11823 alias PERF_OBJECT_TYPE TPERFOBJECTTYPE;
11824 alias PERF_OBJECT_TYPE* PPERFOBJECTTYPE;
11825 
11826 struct POLYTEXT
11827 {
11828  int x;
11829  int y;
11830  UINT n;
11831  LPCTSTR lpstr;
11832  UINT uiFlags;
11833  RECT rcl;
11834  int* pdx;
11835 }
11836 
11837 alias POLYTEXT _POLYTEXT;
11838 alias POLYTEXT TPOLYTEXT;
11839 alias POLYTEXT* PPOLYTEXT;
11840 
11841 struct PORT_INFO_1
11842 {
11843  LPTSTR pName;
11844 }
11845 
11846 alias PORT_INFO_1 _PORT_INFO_1;
11847 alias PORT_INFO_1 TPORTINFO1;
11848 alias PORT_INFO_1* PPORTINFO1;
11849 
11850 struct PORT_INFO_2
11851 {
11852  LPSTR pPortName;
11853  LPSTR pMonitorName;
11854  LPSTR pDescription;
11855  DWORD fPortType;
11856  DWORD Reserved;
11857 }
11858 
11859 alias PORT_INFO_2 _PORT_INFO_2;
11860 alias PORT_INFO_2 TPORTINFO2;
11861 alias PORT_INFO_2* PPORTINFO2;
11862 
11863 struct PREVENT_MEDIA_REMOVAL
11864 {
11865  ubyte PreventMediaRemoval;
11866 }
11867 
11868 alias PREVENT_MEDIA_REMOVAL _PREVENT_MEDIA_REMOVAL;
11869 alias PREVENT_MEDIA_REMOVAL TPREVENTMEDIAREMOVAL;
11870 alias PREVENT_MEDIA_REMOVAL* PPREVENTMEDIAREMOVAL;
11871 
11872 align(2) struct PRINTDLGA 
11873 {  // pd
11874  DWORD  lStructSize;
11875  HWND   hwndOwner;
11876  HANDLE hDevMode;
11877  HANDLE hDevNames;
11878  HDC    hDC;
11879  DWORD  Flags;
11880  WORD   nFromPage;
11881  WORD   nToPage;
11882  WORD   nMinPage;
11883  WORD   nMaxPage;
11884  WORD   nCopies;
11885  HINSTANCE hInstance;
11886  DWORD  lCustData;
11887  LPPRINTHOOKPROC lpfnPrintHook;
11888  LPSETUPHOOKPROC lpfnSetupHook;
11889  LPCSTR lpPrintTemplateName;
11890  LPCSTR lpSetupTemplateName;
11891  HANDLE hPrintTemplate;
11892  HANDLE hSetupTemplate;
11893 }
11894 
11895 alias PRINTDLGA* PPRINTDLGA;
11896 alias PRINTDLGA* LPPRINTDLGA;
11897 align(2) struct PRINTDLGW 
11898 {  // pd
11899  DWORD  lStructSize;
11900  HWND   hwndOwner;
11901  HANDLE hDevMode;
11902  HANDLE hDevNames;
11903  HDC    hDC;
11904  DWORD  Flags;
11905  WORD   nFromPage;
11906  WORD   nToPage;
11907  WORD   nMinPage;
11908  WORD   nMaxPage;
11909  WORD   nCopies;
11910  HINSTANCE hInstance;
11911  DWORD  lCustData;
11912  LPPRINTHOOKPROC lpfnPrintHook;
11913  LPSETUPHOOKPROC lpfnSetupHook;
11914  LPCWSTR lpPrintTemplateName;
11915  LPCWSTR lpSetupTemplateName;
11916  HANDLE hPrintTemplate;
11917  HANDLE hSetupTemplate;
11918 }
11919 alias PRINTDLGW* PPRINTDLGW;
11920 alias PRINTDLGW* LPPRINTDLGW;
11921 
11922 version(Win32SansUnicode){
11923  alias PRINTDLGA PRINTDLG;
11924 }else{
11925  alias PRINTDLGW PRINTDLG;
11926 }
11927 
11928 
11929 alias PRINTDLG* LPPRINTDLG;
11930 alias PRINTDLG* PPRINTDLG;
11931 alias PRINTDLG TAGPD;
11932 alias PRINTDLG TPD;
11933 alias PRINTDLG* PPD;
11934 
11935 struct PRINTER_DEFAULTS
11936 {
11937  LPTSTR pDatatype;
11938  LPDEVMODE pDevMode;
11939  ACCESS_MASK DesiredAccess;
11940 }
11941 
11942 alias PRINTER_DEFAULTS _PRINTER_DEFAULTS;
11943 alias PRINTER_DEFAULTS TPRINTERDEFAULTS;
11944 alias PRINTER_DEFAULTS* PPRINTERDEFAULTS;
11945 
11946 struct PRINTER_INFO_1
11947 {
11948  DWORD Flags;
11949  LPTSTR pDescription;
11950  LPTSTR pName;
11951  LPTSTR pComment;
11952 }
11953 
11954 alias PRINTER_INFO_1* LPPRINTER_INFO_1;
11955 alias PRINTER_INFO_1* PPRINTER_INFO_1;
11956 alias PRINTER_INFO_1 _PRINTER_INFO_1;
11957 alias PRINTER_INFO_1 TPRINTERINFO1;
11958 alias PRINTER_INFO_1* PPRINTERINFO1;
11959 
11960 struct PRINTER_INFO_2
11961 {
11962  LPTSTR pServerName;
11963  LPTSTR pPrinterName;
11964  LPTSTR pShareName;
11965  LPTSTR pPortName;
11966  LPTSTR pDriverName;
11967  LPTSTR pComment;
11968  LPTSTR pLocation;
11969  LPDEVMODE pDevMode;
11970  LPTSTR pSepFile;
11971  LPTSTR pPrintProcessor;
11972  LPTSTR pDatatype;
11973  LPTSTR pParameters;
11974  PSECURITY_DESCRIPTOR pSecurityDescriptor;
11975  DWORD Attributes;
11976  DWORD Priority;
11977  DWORD DefaultPriority;
11978  DWORD StartTime;
11979  DWORD UntilTime;
11980  DWORD Status;
11981  DWORD cJobs;
11982  DWORD AveragePPM;
11983 }
11984 
11985 alias PRINTER_INFO_2 _PRINTER_INFO_2;
11986 alias PRINTER_INFO_2 TPRINTERINFO2;
11987 alias PRINTER_INFO_2* PPRINTERINFO2;
11988 
11989 struct PRINTER_INFO_3
11990 {
11991  PSECURITY_DESCRIPTOR pSecurityDescriptor;
11992 }
11993 
11994 alias PRINTER_INFO_3 _PRINTER_INFO_3;
11995 alias PRINTER_INFO_3 TPRINTERINFO3;
11996 alias PRINTER_INFO_3* PPRINTERINFO3;
11997 
11998 struct PRINTER_INFO_4
11999 {
12000  LPTSTR pPrinterName;
12001  LPTSTR pServerName;
12002  DWORD Attributes;
12003 }
12004 
12005 alias PRINTER_INFO_4 _PRINTER_INFO_4;
12006 alias PRINTER_INFO_4 TPRINTERINFO4;
12007 alias PRINTER_INFO_4* PPRINTERINFO4;
12008 
12009 struct PRINTER_INFO_5
12010 {
12011  LPTSTR pPrinterName;
12012  LPTSTR pPortName;
12013  DWORD Attributes;
12014  DWORD DeviceNotSelectedTimeout;
12015  DWORD TransmissionRetryTimeout;
12016 }
12017 
12018 alias PRINTER_INFO_5 _PRINTER_INFO_5;
12019 alias PRINTER_INFO_5 TPRINTERINFO5;
12020 alias PRINTER_INFO_5* PPRINTERINFO5;
12021 
12022 struct PRINTER_NOTIFY_INFO_DATA
12023 {
12024  ushort _Type;
12025  ushort Field;
12026  DWORD Reserved;
12027  DWORD Id;
12028 
12029  union
12030  {
12031   struct
12032   {
12033    DWORD[1 + 1] adwData;
12034   }
12035   struct
12036   {
12037    DWORD cbBuf;
12038    LPVOID pBuf;
12039   }
12040  }
12041 }
12042 
12043 alias PRINTER_NOTIFY_INFO_DATA _PRINTER_NOTIFY_INFO_DATA;
12044 alias PRINTER_NOTIFY_INFO_DATA TPRINTERNOTIFYINFODATA;
12045 alias PRINTER_NOTIFY_INFO_DATA* PPRINTERNOTIFYINFODATA;
12046 
12047 struct PRINTER_NOTIFY_INFO
12048 {
12049  DWORD Version;
12050  DWORD Flags;
12051  DWORD Count;
12052  PRINTER_NOTIFY_INFO_DATA[1 + 0] aData;
12053 }
12054 
12055 alias PRINTER_NOTIFY_INFO _PRINTER_NOTIFY_INFO;
12056 alias PRINTER_NOTIFY_INFO TPRINTERNOTIFYINFO;
12057 alias PRINTER_NOTIFY_INFO* PPRINTERNOTIFYINFO;
12058 
12059 struct PRINTER_NOTIFY_OPTIONS_TYPE
12060 {
12061  ushort _Type;
12062  ushort Reserved0;
12063  DWORD Reserved1;
12064  DWORD Reserved2;
12065  DWORD Count;
12066  PWORD pFields;
12067 }
12068 
12069 alias PRINTER_NOTIFY_OPTIONS_TYPE* PPRINTER_NOTIFY_OPTIONS_TYPE;
12070 alias PRINTER_NOTIFY_OPTIONS_TYPE _PRINTER_NOTIFY_OPTIONS_TYPE;
12071 alias PRINTER_NOTIFY_OPTIONS_TYPE TPRINTERNOTIFYOPTIONSTYPE;
12072 alias PRINTER_NOTIFY_OPTIONS_TYPE* PPRINTERNOTIFYOPTIONSTYPE;
12073 
12074 struct PRINTER_NOTIFY_OPTIONS
12075 {
12076  DWORD Version;
12077  DWORD Flags;
12078  DWORD Count;
12079  PPRINTER_NOTIFY_OPTIONS_TYPE pTypes;
12080 }
12081 
12082 alias PRINTER_NOTIFY_OPTIONS _PRINTER_NOTIFY_OPTIONS;
12083 alias PRINTER_NOTIFY_OPTIONS TPRINTERNOTIFYOPTIONS;
12084 alias PRINTER_NOTIFY_OPTIONS* PPRINTERNOTIFYOPTIONS;
12085 
12086 struct PRINTPROCESSOR_INFO_1
12087 {
12088  LPTSTR pName;
12089 }
12090 
12091 alias PRINTPROCESSOR_INFO_1 _PRINTPROCESSOR_INFO_1;
12092 alias PRINTPROCESSOR_INFO_1 TPRINTPROCESSORINFO1;
12093 alias PRINTPROCESSOR_INFO_1* PPRINTPROCESSORINFO1;
12094 
12095 struct PRIVILEGE_SET
12096 {
12097  DWORD PrivilegeCount;
12098  DWORD Control;
12099  LUID_AND_ATTRIBUTES[1 + ANYSIZE_ARRAY-1] Privilege;
12100 }
12101 
12102 alias PRIVILEGE_SET* LPPRIVILEGE_SET;
12103 alias PRIVILEGE_SET* PPRIVILEGE_SET;
12104 alias PRIVILEGE_SET _PRIVILEGE_SET;
12105 alias PRIVILEGE_SET TPRIVILEGESET;
12106 alias PRIVILEGE_SET* PPRIVILEGESET;
12107 
12108 struct PROCESS_HEAPENTRY
12109 {
12110  PVOID lpData;
12111  DWORD cbData;
12112  ubyte cbOverhead;
12113  ubyte iRegionIndex;
12114  ushort wFlags;
12115  DWORD dwCommittedSize;
12116  DWORD dwUnCommittedSize;
12117  LPVOID lpFirstBlock;
12118  LPVOID lpLastBlock;
12119  HANDLE hMem;
12120 }
12121 
12122 alias PROCESS_HEAPENTRY* LPPROCESS_HEAP_ENTRY;
12123 alias PROCESS_HEAPENTRY _PROCESS_HEAP_ENTRY;
12124 alias PROCESS_HEAPENTRY TPROCESSHEAPENTRY;
12125 alias PROCESS_HEAPENTRY* PPROCESSHEAPENTRY;
12126 
12127 struct PROCESS_INFORMATION
12128 {
12129  HANDLE hProcess;
12130  HANDLE hThread;
12131  DWORD dwProcessId;
12132  DWORD dwThreadId;
12133 }
12134 
12135 alias PROCESS_INFORMATION* LPPROCESS_INFORMATION;
12136 alias PROCESS_INFORMATION _PROCESS_INFORMATION;
12137 alias PROCESS_INFORMATION TPROCESSINFORMATION;
12138 alias PROCESS_INFORMATION* PPROCESSINFORMATION;
12139 extern(Windows){alias UINT function(HWND, UINT, LPVOID) LPFNPSPCALLBACK;}
12140 alias LPFNPSPCALLBACK TFNPSPCALLBACK;
12141 
12142 
12143 struct PROPSHEETPAGE
12144 {
12145  DWORD dwSize;
12146  DWORD dwFlags;
12147  HINST hInstance;
12148  union {
12149   LPCTSTR pszTemplate;
12150   LPCDLGTEMPLATE pResource;
12151  }
12152  union {
12153   HICON hIcon;
12154   LPCTSTR pszIcon;
12155  }
12156  LPCTSTR pszTitle;
12157  DLGPROC pfnDlgProc;
12158  LPARAM lParam;
12159  LPFNPSPCALLBACK pfnCallback;
12160  UINT* pcRefParent;
12161 //if (_WIN32_IE >= 0x0500)
12162  LPCTSTR pszHeaderTitle;
12163  LPCTSTR pszHeaderSubTitle;
12164 //endif
12165 //if (_WIN32_WINNT >= 0x0501)
12166  HANDLE hActCtx;
12167 //endif
12168 }
12169 
12170 alias PROPSHEETPAGE* LPPROPSHEETPAGE;
12171 alias PROPSHEETPAGE* LPCPROPSHEETPAGE;
12172 alias PROPSHEETPAGE _PROPSHEETPAGE;
12173 alias PROPSHEETPAGE TPROPSHEETPAGE;
12174 alias PROPSHEETPAGE* PPROPSHEETPAGE;
12175 
12176 struct EMPTYRECORD
12177 {
12178 }
12179 
12180 alias EMPTYRECORD* HPROPSHEETPAGE;
12181 
12182 struct PROPSHEETHEADER_U1
12183 {
12184 
12185  union
12186  {
12187   struct
12188   {
12189    HICON hIcon;
12190   }
12191   struct
12192   {
12193    LPCTSTR pszIcon;
12194   }
12195  }
12196 }
12197 
12198 
12199 struct PROPSHEETHEADER_U2
12200 {
12201 
12202  union
12203  {
12204   struct
12205   {
12206    UINT nStartPage;
12207   }
12208   struct
12209   {
12210    LPCTSTR pStartPage;
12211   }
12212  }
12213 }
12214 
12215 
12216 struct PROPSHEETHEADER_U3
12217 {
12218 
12219  union
12220  {
12221   struct
12222   {
12223    LPCPROPSHEETPAGE ppsp;
12224   }
12225   struct
12226   {
12227    HPROPSHEETPAGE* phpage;
12228   }
12229  }
12230 }
12231 
12232 
12233 struct PROPSHEETHEADER
12234 {
12235  DWORD dwSize;
12236  DWORD dwFlags;
12237  HWND hwndParent;
12238  HINST hInstance;
12239  PROPSHEETHEADER_U1 u1;
12240  LPCTSTR pszCaption;
12241  UINT nPages;
12242  PROPSHEETHEADER_U2 u2;
12243  PROPSHEETHEADER_U3 u3;
12244  PFNPROPSHEETCALLBACK pfnCallback;
12245 //if (_WIN32_IE >= 0x0400)
12246  union {
12247   HBITMAP hbmWatermark;
12248   LPCTSTR pszbmWatermark;
12249  }
12250  HPALETTE hplWatermark;
12251  union {
12252   HBITMAP hbmHeader; 
12253   LPCSTR pszbmHeader;
12254  }
12255 //endif
12256 }
12257 
12258 alias PROPSHEETHEADER* LPPROPSHEETHEADER;
12259 alias PROPSHEETHEADER* LPCPROPSHEETHEADER;
12260 alias PROPSHEETHEADER _PROPSHEETHEADER;
12261 alias PROPSHEETHEADER TPROPSHEETHEADER;
12262 alias PROPSHEETHEADER* PPROPSHEETHEADER;
12263 extern(Windows){
12264 alias WINBOOL function(HPROPSHEETPAGE, LPARAM) LPFNADDPROPSHEETPAGE;
12265 alias WINBOOL function(LPVOID, LPFNADDPROPSHEETPAGE, LPARAM) LPFNADDPROPSHEETPAGES;
12266 }
12267 alias LPFNADDPROPSHEETPAGE TFNADDPROPSHEETPAGE;
12268 alias LPFNADDPROPSHEETPAGES TFNADDPROPSHEETPAGES;
12269 
12270 struct PROTOCOL_INFO
12271 {
12272  DWORD dwServiceFlags;
12273  INT iAddressFamily;
12274  INT iMaxSockAddr;
12275  INT iMinSockAddr;
12276  INT iSocketType;
12277  INT iProtocol;
12278  DWORD dwMessageSize;
12279  LPTSTR lpProtocol;
12280 }
12281 
12282 alias PROTOCOL_INFO _PROTOCOL_INFO;
12283 alias PROTOCOL_INFO TPROTOCOLINFO;
12284 alias PROTOCOL_INFO* PPROTOCOLINFO;
12285 
12286 struct PROVIDOR_INFO_1
12287 {
12288  LPTSTR pName;
12289  LPTSTR pEnvironment;
12290  LPTSTR pDLLName;
12291 }
12292 
12293 alias PROVIDOR_INFO_1 _PROVIDOR_INFO_1;
12294 alias PROVIDOR_INFO_1 TPROVIDORINFO1;
12295 alias PROVIDOR_INFO_1* PPROVIDORINFO1;
12296 
12297 struct PSHNOTIFY
12298 {
12299  NMHDR hdr;
12300  LPARAM lParam;
12301 }
12302 
12303 alias PSHNOTIFY* LPPSHNOTIFY;
12304 alias PSHNOTIFY _PSHNOTIFY;
12305 alias PSHNOTIFY TPSHNOTIFY;
12306 alias PSHNOTIFY* PPSHNOTIFY;
12307 
12308 struct PUNCTUATION
12309 {
12310  UINT iSize;
12311  LPSTR szPunctuation;
12312 }
12313 
12314 alias PUNCTUATION _PUNCTUATION;
12315 alias PUNCTUATION TPUNCTUATION;
12316 alias PUNCTUATION* PPUNCTUATION;
12317 
12318 struct QUERY_SERVICE_CONFIG
12319 {
12320  DWORD dwServiceType;
12321  DWORD dwStartType;
12322  DWORD dwErrorControl;
12323  LPTSTR lpBinaryPathName;
12324  LPTSTR lpLoadOrderGroup;
12325  DWORD dwTagId;
12326  LPTSTR lpDependencies;
12327  LPTSTR lpServiceStartName;
12328  LPTSTR lpDisplayName;
12329 }
12330 
12331 alias QUERY_SERVICE_CONFIG* LPQUERY_SERVICE_CONFIG;
12332 alias QUERY_SERVICE_CONFIG _QUERY_SERVICE_CONFIG;
12333 alias QUERY_SERVICE_CONFIG TQUERYSERVICECONFIG;
12334 alias QUERY_SERVICE_CONFIG* PQUERYSERVICECONFIG;
12335 
12336 struct QUERY_SERVICE_LOCK_STATUS
12337 {
12338  DWORD fIsLocked;
12339  LPTSTR lpLockOwner;
12340  DWORD dwLockDuration;
12341 }
12342 
12343 alias QUERY_SERVICE_LOCK_STATUS* LPQUERY_SERVICE_LOCK_STATUS;
12344 alias QUERY_SERVICE_LOCK_STATUS _QUERY_SERVICE_LOCK_STATUS;
12345 alias QUERY_SERVICE_LOCK_STATUS TQUERYSERVICELOCKSTATUS;
12346 alias QUERY_SERVICE_LOCK_STATUS* PQUERYSERVICELOCKSTATUS;
12347 
12348 struct RASAMB
12349 {
12350  DWORD dwSize;
12351  DWORD dwError;
12352  TCHAR[1 + NETBIOS_NAME_LEN+1-1] szNetBiosError;
12353  ubyte bLana;
12354 }
12355 
12356 alias RASAMB _RASAMB;
12357 alias RASAMB TRASAMB;
12358 alias RASAMB* PRASAMB;
12359 
12360 struct RASCONN
12361 {
12362  DWORD dwSize;
12363  HRASCONN hrasconn;
12364  TCHAR[1 + RAS_MaxEntryName+1-1] szEntryName;
12365  char[1 + RAS_MaxDeviceType+1-1] szDeviceType;
12366  char[1 + RAS_MaxDeviceName+1-1] szDeviceName;
12367 }
12368 
12369 alias RASCONN _RASCONN;
12370 alias RASCONN TRASCONN;
12371 alias RASCONN* PRASCONN;
12372 
12373 struct RASCONNSTATUS
12374 {
12375  DWORD dwSize;
12376  RASCONNSTATE rasconnstate;
12377  DWORD dwError;
12378  TCHAR[1 + RAS_MaxDeviceType+1-1] szDeviceType;
12379  TCHAR[1 + RAS_MaxDeviceName+1-1] szDeviceName;
12380 }
12381 
12382 alias RASCONNSTATUS _RASCONNSTATUS;
12383 alias RASCONNSTATUS TRASCONNSTATUS;
12384 alias RASCONNSTATUS* PRASCONNSTATUS;
12385 
12386 struct RASDIALEXTENSIONS
12387 {
12388  DWORD dwSize;
12389  DWORD dwfOptions;
12390  HWND hwndParent;
12391  DWORD reserved;
12392 }
12393 
12394 alias RASDIALEXTENSIONS _RASDIALEXTENSIONS;
12395 alias RASDIALEXTENSIONS TRASDIALEXTENSIONS;
12396 alias RASDIALEXTENSIONS* PRASDIALEXTENSIONS;
12397 
12398 struct RASDIALPARAMS
12399 {
12400  DWORD dwSize;
12401  TCHAR[1 + RAS_MaxEntryName+1-1] szEntryName;
12402  TCHAR[1 + RAS_MaxPhoneNumber+1-1] szPhoneNumber;
12403  TCHAR[1 + (RAS_MaxCallbackNumber+1)-1] szCallbackNumber;
12404  TCHAR[1 + (UNLEN+1)-1] szUserName;
12405  TCHAR[1 + (PWLEN+1)-1] szPassword;
12406  TCHAR[1 + (DNLEN+1)-1] szDomain;
12407 }
12408 
12409 alias RASDIALPARAMS _RASDIALPARAMS;
12410 alias RASDIALPARAMS TRASDIALPARAMS;
12411 alias RASDIALPARAMS* PRASDIALPARAMS;
12412 
12413 struct RASENTRYNAME
12414 {
12415  DWORD dwSize;
12416  TCHAR[1 + (RAS_MaxEntryName+1)-1] szEntryName;
12417 }
12418 
12419 alias RASENTRYNAME _RASENTRYNAME;
12420 alias RASENTRYNAME TRASENTRYNAME;
12421 alias RASENTRYNAME* PRASENTRYNAME;
12422 
12423 struct RASPPPIP
12424 {
12425  DWORD dwSize;
12426  DWORD dwError;
12427  TCHAR[RAS_MaxIpAddress+1] szIpAddress;
12428 }
12429 
12430 alias RASPPPIP _RASPPPIP;
12431 alias RASPPPIP TRASPPPIP;
12432 alias RASPPPIP* PRASPPPIP;
12433 
12434 struct RASPPPIPX
12435 {
12436  DWORD dwSize;
12437  DWORD dwError;
12438  TCHAR[1 + (RAS_MaxIpxAddress+1)-1] szIpxAddress;
12439 }
12440 
12441 alias RASPPPIPX _RASPPPIPX;
12442 alias RASPPPIPX TRASPPPIPX;
12443 alias RASPPPIPX* PRASPPPIPX;
12444 
12445 struct RASPPPNBF
12446 {
12447  DWORD dwSize;
12448  DWORD dwError;
12449  DWORD dwNetBiosError;
12450  TCHAR[1 + (NETBIOS_NAME_LEN+1)-1] szNetBiosError;
12451  TCHAR[1 + (NETBIOS_NAME_LEN+1)-1] szWorkstationName;
12452  ubyte bLana;
12453 }
12454 
12455 alias RASPPPNBF _RASPPPNBF;
12456 alias RASPPPNBF TRASPPPNBF;
12457 alias RASPPPNBF* PRASPPPNBF;
12458 
12459 struct RASTERIZER_STATUS
12460 {
12461  short nSize;
12462  short wFlags;
12463  short nLanguageID;
12464 }
12465 
12466 alias RASTERIZER_STATUS* LPRASTERIZER_STATUS;
12467 alias RASTERIZER_STATUS _RASTERIZER_STATUS;
12468 alias RASTERIZER_STATUS TRASTERIZERSTATUS;
12469 alias RASTERIZER_STATUS* PRASTERIZERSTATUS;
12470 
12471 struct REASSIGN_BLOCKS
12472 {
12473  ushort Reserved;
12474  ushort Count;
12475  DWORD[1 + 0] BlockNumber;
12476 }
12477 
12478 alias REASSIGN_BLOCKS _REASSIGN_BLOCKS;
12479 alias REASSIGN_BLOCKS TREASSIGNBLOCKS;
12480 alias REASSIGN_BLOCKS* PREASSIGNBLOCKS;
12481 
12482 struct REMOTE_NAME_INFO
12483 {
12484  LPTSTR lpUniversalName;
12485  LPTSTR lpConnectionName;
12486  LPTSTR lpRemainingPath;
12487 }
12488 
12489 alias REMOTE_NAME_INFO _REMOTE_NAME_INFO;
12490 alias REMOTE_NAME_INFO TREMOTENAMEINFO;
12491 alias REMOTE_NAME_INFO* PREMOTENAMEINFO;
12492 
12493 struct REPASTESPECIAL
12494 {
12495  DWORD dwAspect;
12496  DWORD dwParam;
12497 }
12498 
12499 alias REPASTESPECIAL _REPASTESPECIAL;
12500 alias REPASTESPECIAL TREPASTESPECIAL;
12501 alias REPASTESPECIAL* PREPASTESPECIAL;
12502 
12503 struct REQRESIZE
12504 {
12505  NMHDR nmhdr;
12506  RECT rc;
12507 }
12508 
12509 alias REQRESIZE _REQRESIZE;
12510 alias REQRESIZE TREQRESIZE;
12511 alias REQRESIZE* PREQRESIZE;
12512 
12513 struct RGNDATAHEADER
12514 {
12515  DWORD dwSize;
12516  DWORD iType;
12517  DWORD nCount;
12518  DWORD nRgnSize;
12519  RECT rcBound;
12520 }
12521 
12522 alias RGNDATAHEADER _RGNDATAHEADER;
12523 alias RGNDATAHEADER TRGNDATAHEADER;
12524 alias RGNDATAHEADER* PRGNDATAHEADER;
12525 alias RGNDATAHEADER* LPRGNDATAHEADER;
12526 
12527 struct RGNDATA
12528 {
12529  RGNDATAHEADER rdh;
12530  char[1 + 0] Buffer;
12531 }
12532 
12533 alias RGNDATA* LPRGNDATA;
12534 alias RGNDATA _RGNDATA;
12535 alias RGNDATA TRGNDATA;
12536 alias RGNDATA* PRGNDATA;
12537 
12538 struct SCROLLINFO
12539 {
12540  UINT cbSize;
12541  UINT fMask;
12542  int nMin;
12543  int nMax;
12544  UINT nPage;
12545  int nPos;
12546  int nTrackPos;
12547 }
12548 
12549 alias SCROLLINFO* LPSCROLLINFO;
12550 alias SCROLLINFO* LPCSCROLLINFO;
12551 alias SCROLLINFO TAGSCROLLINFO;
12552 alias SCROLLINFO TSCROLLINFO;
12553 alias SCROLLINFO* PSCROLLINFO;
12554 
12555 struct SECURITY_ATTRIBUTES
12556 {
12557  DWORD nLength;
12558  LPVOID lpSecurityDescriptor;
12559  WINBOOL bInheritHandle;
12560 }
12561 
12562 alias SECURITY_ATTRIBUTES* LPSECURITY_ATTRIBUTES;
12563 alias SECURITY_ATTRIBUTES _SECURITY_ATTRIBUTES;
12564 alias SECURITY_ATTRIBUTES TSECURITYATTRIBUTES;
12565 alias SECURITY_ATTRIBUTES* PSECURITYATTRIBUTES;
12566 alias DWORD SECURITY_INFORMATION;
12567 alias SECURITY_INFORMATION* PSECURITY_INFORMATION;
12568 alias SECURITY_INFORMATION TSECURITYINFORMATION;
12569 alias SECURITY_INFORMATION* PSECURITYINFORMATION;
12570 
12571 struct SELCHANGE
12572 {
12573  NMHDR nmhdr;
12574  CHARRANGE chrg;
12575  ushort seltyp;
12576 }
12577 
12578 alias SELCHANGE _SELCHANGE;
12579 alias SELCHANGE TSELCHANGE;
12580 alias SELCHANGE* PSELCHANGE;
12581 
12582 struct SERIALKEYS
12583 {
12584  DWORD cbSize;
12585  DWORD dwFlags;
12586  LPSTR lpszActivePort;
12587  LPSTR lpszPort;
12588  DWORD iBaudRate;
12589  DWORD iPortState;
12590  UINT  iActive;
12591 }
12592 
12593 alias SERIALKEYS* LPSERIALKEYS;
12594 alias SERIALKEYS TAGSERIALKEYS;
12595 alias SERIALKEYS TSERIALKEYS;
12596 alias SERIALKEYS* PSERIALKEYS;
12597 
12598 struct SERVICE_TABLE_ENTRY
12599 {
12600  LPTSTR lpServiceName;
12601  LPSERVICE_MAIN_FUNCTION lpServiceProc;
12602 }
12603 
12604 alias SERVICE_TABLE_ENTRY* LPSERVICE_TABLE_ENTRY;
12605 alias SERVICE_TABLE_ENTRY _SERVICE_TABLE_ENTRY;
12606 alias SERVICE_TABLE_ENTRY TSERVICETABLEENTRY;
12607 alias SERVICE_TABLE_ENTRY* PSERVICETABLEENTRY;
12608 
12609 struct SERVICE_TYPE_VALUE_ABS
12610 {
12611  DWORD dwNameSpace;
12612  DWORD dwValueType;
12613  DWORD dwValueSize;
12614  LPTSTR lpValueName;
12615  PVOID lpValue;
12616 }
12617 
12618 alias SERVICE_TYPE_VALUE_ABS _SERVICE_TYPE_VALUE_ABS;
12619 alias SERVICE_TYPE_VALUE_ABS TSERVICETYPEVALUEABS;
12620 alias SERVICE_TYPE_VALUE_ABS* PSERVICETYPEVALUEABS;
12621 
12622 struct SERVICE_TYPE_INFO_ABS
12623 {
12624  LPTSTR lpTypeName;
12625  DWORD dwValueCount;
12626  SERVICE_TYPE_VALUE_ABS[1 + 0] Values;
12627 }
12628 
12629 alias SERVICE_TYPE_INFO_ABS _SERVICE_TYPE_INFO_ABS;
12630 alias SERVICE_TYPE_INFO_ABS TSERVICETYPEINFOABS;
12631 alias SERVICE_TYPE_INFO_ABS* PSERVICETYPEINFOABS;
12632 
12633 struct SESSION_BUFFER
12634 {
12635  UCHAR lsn;
12636  UCHAR state;
12637  UCHAR[1 + NCBNAMSZ-1] local_name;
12638  UCHAR[1 + NCBNAMSZ-1] remote_name;
12639  UCHAR rcvs_outstanding;
12640  UCHAR sends_outstanding;
12641 }
12642 
12643 alias SESSION_BUFFER _SESSION_BUFFER;
12644 alias SESSION_BUFFER TSESSIONBUFFER;
12645 alias SESSION_BUFFER* PSESSIONBUFFER;
12646 
12647 struct SESSION_HEADER
12648 {
12649  UCHAR sess_name;
12650  UCHAR num_sess;
12651  UCHAR rcv_dg_outstanding;
12652  UCHAR rcv_any_outstanding;
12653 }
12654 
12655 alias SESSION_HEADER _SESSION_HEADER;
12656 alias SESSION_HEADER TSESSIONHEADER;
12657 alias SESSION_HEADER* PSESSIONHEADER;
12658 
12659 struct SET_PARTITION_INFORMATION
12660 {
12661  ubyte PartitionType;
12662 }
12663 
12664 alias SET_PARTITION_INFORMATION _SET_PARTITION_INFORMATION;
12665 alias SET_PARTITION_INFORMATION TSETPARTITIONINFORMATION;
12666 alias SET_PARTITION_INFORMATION* PSETPARTITIONINFORMATION;
12667 alias int SHCONTF;
12668 enum { SHCONTF_FOLDERS = 32, SHCONTF_NONFOLDERS = 64, SHCONTF_INCLUDEHIDDEN = 128,  };
12669 alias SHCONTF TAGSHCONTF;
12670 alias SHCONTF TSHCONTF;
12671 
12672 struct SHFILEINFOA
12673 {
12674  HICON hIcon;
12675  int iIcon;
12676  DWORD dwAttributes;
12677  CHAR[MAX_PATH] szDisplayName;
12678  CHAR[80] szTypeName;
12679 }
12680 struct SHFILEINFOW
12681 {
12682  HICON hIcon;
12683  int iIcon;
12684  DWORD dwAttributes;
12685  WCHAR[MAX_PATH] szDisplayName;
12686  WCHAR[80] szTypeName;
12687 }
12688 version(Win32SansUnicode)
12689 {
12690  alias SHFILEINFOA SHFILEINFO;
12691 }
12692 else
12693 {
12694  alias SHFILEINFOW SHFILEINFO;
12695 }
12696 
12697 alias SHFILEINFO _SHFILEINFO;
12698 alias SHFILEINFO TSHFILEINFO;
12699 alias SHFILEINFO* PSHFILEINFO;
12700 
12701 alias ushort FILEOP_FLAGS;
12702 alias FILEOP_FLAGS TFILEOPFLAGS;
12703 alias FILEOP_FLAGS* PFILEOPFLAGS;
12704 
12705 const FILEOP_FLAGS
12706  FOF_MULTIDESTFILES  = 0x0001,
12707  FOF_CONFIRMMOUSE    = 0x0002,
12708  FOF_SILENT    = 0x0004,
12709  FOF_RENAMEONCOLLISION  = 0x0008,
12710  FOF_NOCONFIRMATION  = 0x0010,
12711  FOF_WANTMAPPINGHANDLE  = 0x0020,
12712  FOF_ALLOWUNDO    = 0x0040,
12713  FOF_FILESONLY    = 0x0080,
12714  FOF_SIMPLEPROGRESS  = 0x0100,
12715  FOF_NOCONFIRMMKDIR  = 0x0200,
12716  FOF_NOERRORUI    = 0x0400,
12717  FOF_NOCOPYSECURITYATTRIBS = 0x0800;
12718 
12719 enum : UINT 
12720 {
12721  FO_MOVE = 1,
12722  FO_COPY,
12723  FO_DELETE,
12724  FO_RENAME
12725 }
12726 
12727 align(2) struct SHFILEOPSTRUCTA 
12728 {
12729  HWND   hwnd;
12730  UINT   wFunc;
12731  LPCSTR    pFrom;
12732  LPCSTR    pTo;
12733  FILEOP_FLAGS fFlags;
12734  BOOL   fAnyOperationsAborted;
12735  PVOID  hNameMappings;
12736  LPCSTR    lpszProgressTitle;
12737 }
12738 alias SHFILEOPSTRUCTA* LPSHFILEOPSTRUCTA;
12739 
12740 align(2) struct SHFILEOPSTRUCTW 
12741 {
12742  HWND   hwnd;
12743  UINT   wFunc;
12744  LPCWSTR   pFrom;
12745  LPCWSTR   pTo;
12746  FILEOP_FLAGS fFlags;
12747  BOOL   fAnyOperationsAborted;
12748  PVOID  hNameMappings;
12749  LPCWSTR   lpszProgressTitle;
12750 }
12751 alias SHFILEOPSTRUCTW* LPSHFILEOPSTRUCTW;
12752 
12753 version(Win32SansUnicode) {
12754  alias SHFILEOPSTRUCTA* LPSHFILEOPSTRUCT;
12755  alias SHFILEOPSTRUCTA _SHFILEOPSTRUCT;
12756  alias SHFILEOPSTRUCTA TSHFILEOPSTRUCT;
12757  alias SHFILEOPSTRUCTA* PSHFILEOPSTRUCT;
12758  alias SHFILEOPSTRUCTA SHFILEOPSTRUCT;
12759 }
12760 else {
12761  alias SHFILEOPSTRUCTW* LPSHFILEOPSTRUCT;
12762  alias SHFILEOPSTRUCTW _SHFILEOPSTRUCT;
12763  alias SHFILEOPSTRUCTW TSHFILEOPSTRUCT;
12764  alias SHFILEOPSTRUCTW* PSHFILEOPSTRUCT;
12765  alias SHFILEOPSTRUCTW SHFILEOPSTRUCT;
12766 }
12767 
12768 alias int SHGNO;
12769 enum { SHGDN_NORMAL = 0, SHGDN_INFOLDER = 1, SHGDN_FORPARSING = 0x8000,  };
12770 alias SHGNO TAGSHGDN;
12771 alias SHGNO TSHGDN;
12772 
12773 struct SHNAMEMAPPING
12774 {
12775  LPSTR pszOldPath;
12776  LPSTR pszNewPath;
12777  int cchOldPath;
12778  int cchNewPath;
12779 }
12780 
12781 alias SHNAMEMAPPING* LPSHNAMEMAPPING;
12782 alias SHNAMEMAPPING _SHNAMEMAPPING;
12783 alias SHNAMEMAPPING TSHNAMEMAPPING;
12784 alias SHNAMEMAPPING* PSHNAMEMAPPING;
12785 
12786 struct SID_AND_ATTRIBUTES
12787 {
12788  PSID Sid;
12789  DWORD Attributes;
12790 }
12791 
12792 alias SID_AND_ATTRIBUTES _SID_AND_ATTRIBUTES;
12793 alias SID_AND_ATTRIBUTES TSIDANDATTRIBUTES;
12794 alias SID_AND_ATTRIBUTES* PSIDANDATTRIBUTES;
12795 alias SID_AND_ATTRIBUTES[1 + ANYSIZE_ARRAY-1] SID_AND_ATTRIBUTES_ARRAY;
12796 alias SID_AND_ATTRIBUTES_ARRAY* PSID_AND_ATTRIBUTES_ARRAY;
12797 alias SID_AND_ATTRIBUTES_ARRAY TSIDANDATTRIBUTESARRAY;
12798 alias SID_AND_ATTRIBUTES_ARRAY* PSIDANDATTRIBUTESARRAY;
12799 
12800 struct SINGLE_LIST_ENTRY
12801 {
12802  _SINGLE_LIST_ENTRY* Next;
12803 }
12804 
12805 alias SINGLE_LIST_ENTRY _SINGLE_LIST_ENTRY;
12806 alias SINGLE_LIST_ENTRY TSINGLELISTENTRY;
12807 alias SINGLE_LIST_ENTRY* PSINGLELISTENTRY;
12808 
12809 struct SOUNDSENTRY
12810 {
12811  UINT cbSize;
12812  DWORD dwFlags;
12813  DWORD iFSTextEffect;
12814  DWORD iFSTextEffectMSec;
12815  DWORD iFSTextEffectColorBits;
12816  DWORD iFSGrafEffect;
12817  DWORD iFSGrafEffectMSec;
12818  DWORD iFSGrafEffectColor;
12819  DWORD iWindowsEffect;
12820  DWORD iWindowsEffectMSec;
12821  LPTSTR lpszWindowsEffectDLL;
12822  DWORD iWindowsEffectOrdinal;
12823 }
12824 
12825 alias SOUNDSENTRY* LPSOUNDSENTRY;
12826 alias SOUNDSENTRY TAGSOUNDSENTRY;
12827 alias SOUNDSENTRY TSOUNDSENTRY;
12828 alias SOUNDSENTRY* PSOUNDSENTRY;
12829 
12830 struct STARTUPINFO
12831 {
12832  DWORD cb;
12833  LPTSTR lpReserved;
12834  LPTSTR lpDesktop;
12835  LPTSTR lpTitle;
12836  DWORD dwX;
12837  DWORD dwY;
12838  DWORD dwXSize;
12839  DWORD dwYSize;
12840  DWORD dwXCountChars;
12841  DWORD dwYCountChars;
12842  DWORD dwFillAttribute;
12843  DWORD dwFlags;
12844  ushort wShowWindow;
12845  ushort cbReserved2;
12846  LPBYTE lpReserved2;
12847  HANDLE hStdInput;
12848  HANDLE hStdOutput;
12849  HANDLE hStdError;
12850 }
12851 
12852 alias STARTUPINFO* LPSTARTUPINFO;
12853 alias STARTUPINFO _STARTUPINFO;
12854 alias STARTUPINFO TSTARTUPINFO;
12855 alias STARTUPINFO* PSTARTUPINFO;
12856 
12857 struct STICKYKEYS
12858 {
12859  DWORD cbSize;
12860  DWORD dwFlags;
12861 }
12862 
12863 alias STICKYKEYS* LPSTICKYKEYS;
12864 alias STICKYKEYS TAGSTICKYKEYS;
12865 alias STICKYKEYS TSTICKYKEYS;
12866 alias STICKYKEYS* PSTICKYKEYS;
12867 
12868 struct STRRET
12869 {
12870  UINT uType;
12871 
12872  union
12873  {
12874   struct
12875   {
12876    LPWSTR pOleStr;
12877   }
12878   struct
12879   {
12880    UINT uOffset;
12881   }
12882   struct
12883   {
12884    char[1 + MAX_PATH-1] cStr;
12885   }
12886  }
12887 }
12888 
12889 alias STRRET* LPSTRRET;
12890 alias STRRET _STRRET;
12891 alias STRRET TSTRRET;
12892 alias STRRET* PSTRRET;
12893 
12894 struct STYLEBUF
12895 {
12896  DWORD dwStyle;
12897  TCHAR[1 + 31] szDescription;
12898 }
12899 
12900 alias STYLEBUF* LPSTYLEBUF;
12901 alias STYLEBUF _TAGSTYLEBUF;
12902 alias STYLEBUF TSTYLEBUF;
12903 alias STYLEBUF* PSTYLEBUF;
12904 
12905 struct STYLESTRUCT
12906 {
12907  DWORD styleOld;
12908  DWORD styleNew;
12909 }
12910 
12911 alias STYLESTRUCT* LPSTYLESTRUCT;
12912 alias STYLESTRUCT TAGSTYLESTRUCT;
12913 alias STYLESTRUCT TSTYLESTRUCT;
12914 alias STYLESTRUCT* PSTYLESTRUCT;
12915 
12916 struct SYSTEM_AUDIT_ACE
12917 {
12918  ACE_HEADER Header;
12919  ACCESS_MASK Mask;
12920  DWORD SidStart;
12921 }
12922 
12923 alias SYSTEM_AUDIT_ACE _SYSTEM_AUDIT_ACE;
12924 alias SYSTEM_AUDIT_ACE TSYSTEMAUDITACE;
12925 alias SYSTEM_AUDIT_ACE* PSYSTEMAUDITACE;
12926 
12927 struct SYSTEM_INFO 
12928 {
12929  union {
12930   DWORD dwOemId;
12931   struct {
12932    WORD wProcessorArchitecture;
12933    WORD wReserved;
12934   }
12935  }
12936  DWORD dwPageSize;
12937  LPVOID lpMinimumApplicationAddress;
12938  LPVOID lpMaximumApplicationAddress;
12939  DWORD_PTR dwActiveProcessorMask;
12940  DWORD dwNumberOfProcessors;
12941  DWORD dwProcessorType;
12942  DWORD dwAllocationGranularity;
12943  WORD wProcessorLevel;
12944  WORD wProcessorRevision;
12945 }
12946 
12947 alias SYSTEM_INFO* LPSYSTEM_INFO;
12948 alias SYSTEM_INFO _SYSTEM_INFO;
12949 alias SYSTEM_INFO TSYSTEMINFO;
12950 alias SYSTEM_INFO* PSYSTEMINFO;
12951 
12952 struct SYSTEM_POWER_STATUS
12953 {
12954  ubyte ACLineStatus;
12955  ubyte BatteryFlag;
12956  ubyte BatteryLifePercent;
12957  ubyte Reserved1;
12958  DWORD BatteryLifeTime;
12959  DWORD BatteryFullLifeTime;
12960 }
12961 
12962 alias SYSTEM_POWER_STATUS _SYSTEM_POWER_STATUS;
12963 alias SYSTEM_POWER_STATUS TSYSTEMPOWERSTATUS;
12964 alias SYSTEM_POWER_STATUS* PSYSTEMPOWERSTATUS;
12965 alias EMPTYRECORD* LPSYSTEM_POWER_STATUS;
12966 
12967 struct TAPE_ERASE
12968 {
12969  DWORD Type;
12970  BOOLEAN Immediate;
12971 }
12972 
12973 alias TAPE_ERASE _TAPE_ERASE;
12974 alias TAPE_ERASE TTAPEERASE;
12975 alias TAPE_ERASE* PTAPEERASE;
12976 
12977 struct TAPE_GET_DRIVE_PARAMETERS
12978 {
12979  ubyte ECC;
12980  ubyte Compression;
12981  ubyte DataPadding;
12982  ubyte ReportSetmarks;
12983  ULONG DefaultBlockSize;
12984  ULONG MaximumBlockSize;
12985  ULONG MinimumBlockSize;
12986  ULONG MaximumPartitionCount;
12987  ULONG FeaturesLow;
12988  ULONG FeaturesHigh;
12989  ULONG EOTWarningZoneSize;
12990 }
12991 
12992 alias TAPE_GET_DRIVE_PARAMETERS _TAPE_GET_DRIVE_PARAMETERS;
12993 alias TAPE_GET_DRIVE_PARAMETERS TTAPEGETDRIVEPARAMETERS;
12994 alias TAPE_GET_DRIVE_PARAMETERS* PTAPEGETDRIVEPARAMETERS;
12995 
12996 struct TAPE_GET_MEDIA_PARAMETERS
12997 {
12998  LARGE_INTEGER Capacity;
12999  LARGE_INTEGER Remaining;
13000  DWORD BlockSize;
13001  DWORD PartitionCount;
13002  ubyte WriteProtected;
13003 }
13004 
13005 alias TAPE_GET_MEDIA_PARAMETERS _TAPE_GET_MEDIA_PARAMETERS;
13006 alias TAPE_GET_MEDIA_PARAMETERS TTAPEGETMEDIAPARAMETERS;
13007 alias TAPE_GET_MEDIA_PARAMETERS* PTAPEGETMEDIAPARAMETERS;
13008 
13009 struct TAPE_GET_POSITION
13010 {
13011  ULONG _Type;
13012  ULONG Partition;
13013  ULONG OffsetLow;
13014  ULONG OffsetHigh;
13015 }
13016 
13017 alias TAPE_GET_POSITION _TAPE_GET_POSITION;
13018 alias TAPE_GET_POSITION TTAPEGETPOSITION;
13019 alias TAPE_GET_POSITION* PTAPEGETPOSITION;
13020 
13021 struct TAPE_PREPARE
13022 {
13023  DWORD Operation;
13024  BOOLEAN  Immediate;
13025 }
13026 
13027 alias TAPE_PREPARE _TAPE_PREPARE;
13028 alias TAPE_PREPARE TTAPEPREPARE;
13029 alias TAPE_PREPARE* PTAPEPREPARE;
13030 
13031 struct TAPE_SET_DRIVE_PARAMETERS
13032 {
13033  ubyte ECC;
13034  ubyte Compression;
13035  ubyte DataPadding;
13036  ubyte ReportSetmarks;
13037  ULONG EOTWarningZoneSize;
13038 }
13039 
13040 alias TAPE_SET_DRIVE_PARAMETERS _TAPE_SET_DRIVE_PARAMETERS;
13041 alias TAPE_SET_DRIVE_PARAMETERS TTAPESETDRIVEPARAMETERS;
13042 alias TAPE_SET_DRIVE_PARAMETERS* PTAPESETDRIVEPARAMETERS;
13043 
13044 struct TAPE_SET_MEDIA_PARAMETERS
13045 {
13046  ULONG BlockSize;
13047 }
13048 
13049 alias TAPE_SET_MEDIA_PARAMETERS _TAPE_SET_MEDIA_PARAMETERS;
13050 alias TAPE_SET_MEDIA_PARAMETERS TTAPESETMEDIAPARAMETERS;
13051 alias TAPE_SET_MEDIA_PARAMETERS* PTAPESETMEDIAPARAMETERS;
13052 
13053 struct TAPE_SET_POSITION
13054 {
13055  ULONG Method;
13056  ULONG Partition;
13057  LARGE_INTEGER Offset;
13058  BOOLEAN Immediate;
13059 }
13060 
13061 alias TAPE_SET_POSITION _TAPE_SET_POSITION;
13062 alias TAPE_SET_POSITION TTAPESETPOSITION;
13063 alias TAPE_SET_POSITION* PTAPESETPOSITION;
13064 
13065 struct TAPE_WRITE_MARKS
13066 {
13067  ULONG _Type;
13068  ULONG Count;
13069  BOOLEAN Immediate;
13070 }
13071 
13072 alias TAPE_WRITE_MARKS _TAPE_WRITE_MARKS;
13073 alias TAPE_WRITE_MARKS TTAPEWRITEMARKS;
13074 alias TAPE_WRITE_MARKS* PTAPEWRITEMARKS;
13075 
13076 struct TBADDBITMAP
13077 {
13078  HINST hInst;
13079  UINT nID;
13080 }
13081 
13082 alias TBADDBITMAP* LPTBADDBITMAP;
13083 alias TBADDBITMAP TTBADDBITMAP;
13084 alias TBADDBITMAP* PTBADDBITMAP;
13085 
13086 struct TBBUTTON 
13087 {
13088  align(2):
13089  int  iBitmap;
13090  int  idCommand;
13091  BYTE fsState;
13092  BYTE fsStyle;
13093 //#ifdef _WIN64
13094 // BYTE  bReserved[6];  // padding for alignment
13095 //#elif defined(_WIN32)
13096  BYTE[2]  bReserved;  // padding for alignment
13097 //#endif
13098  DWORD_PTR   dwData;
13099  INT_PTR  iString;
13100 }
13101 
13102 alias TBBUTTON* LPTBBUTTON;
13103 alias TBBUTTON* LPCTBBUTTON;
13104 alias TBBUTTON _TBBUTTON;
13105 alias TBBUTTON TTBBUTTON;
13106 alias TBBUTTON* PTBBUTTON;
13107 
13108 struct NMTOOLBARA 
13109 {
13110  align(2):
13111  NMHDR hdr;
13112  int   iItem;
13113  TBBUTTON tbButton;
13114  int   cchText;
13115  LPSTR   pszText;
13116  RECT  rcButton;
13117 }
13118 struct NMTOOLBARW 
13119 {
13120  align(2):
13121  NMHDR hdr;
13122  int   iItem;
13123  TBBUTTON tbButton;
13124  int   cchText;
13125  LPWSTR   pszText;
13126  RECT  rcButton;
13127 }
13128 version(Win32SansUnicode){
13129  alias NMTOOLBARA NMTOOLBAR;
13130 }else{
13131  alias NMTOOLBARW NMTOOLBAR;
13132 }
13133 alias NMTOOLBAR* LPNMTOOLBAR;
13134 
13135 alias NMTOOLBAR TBNOTIFY;
13136 
13137 alias TBNOTIFY* LPTBNOTIFY;
13138 alias TBNOTIFY TTBNOTIFY;
13139 alias TBNOTIFY* PTBNOTIFY;
13140 
13141 struct TBSAVEPARAMS
13142 {
13143  HKEY hkr;
13144  LPCTSTR pszSubKey;
13145  LPCTSTR pszValueName;
13146 }
13147 
13148 alias TBSAVEPARAMS TTBSAVEPARAMS;
13149 alias TBSAVEPARAMS* PTBSAVEPARAMS;
13150 
13151 struct TC_HITTESTINFO
13152 {
13153  POINT pt;
13154  UINT flags;
13155 }
13156 
13157 alias TC_HITTESTINFO TCHITTESTINFO;
13158 alias TC_HITTESTINFO _TC_HITTESTINFO;
13159 alias TC_HITTESTINFO TTCHITTESTINFO;
13160 alias TC_HITTESTINFO* PTCHITTESTINFO;
13161 
13162 struct TC_ITEM
13163 {
13164  UINT mask;
13165  UINT lpReserved1;
13166  UINT lpReserved2;
13167  LPTSTR pszText;
13168  int cchTextMax;
13169  int iImage;
13170  LPARAM lParam;
13171 }
13172 
13173 alias TC_ITEM _TC_ITEM;
13174 alias TC_ITEM TTCITEM;
13175 alias TC_ITEM* PTCITEM;
13176 
13177 struct TC_ITEMHEADER
13178 {
13179  UINT mask;
13180  UINT lpReserved1;
13181  UINT lpReserved2;
13182  LPTSTR pszText;
13183  int cchTextMax;
13184  int iImage;
13185 }
13186 
13187 alias TC_ITEMHEADER _TC_ITEMHEADER;
13188 alias TC_ITEMHEADER TTCITEMHEADER;
13189 alias TC_ITEMHEADER* PTCITEMHEADER;
13190 
13191 align(1) struct NMTCKEYDOWN
13192 {
13193  NMHDR hdr;
13194  WORD wVKey;
13195  UINT flags;
13196 }
13197 
13198 alias NMTCKEYDOWN TC_KEYDOWN;
13199 alias TC_KEYDOWN _TC_KEYDOWN;
13200 alias TC_KEYDOWN TTCKEYDOWN;
13201 alias TC_KEYDOWN* PTCKEYDOWN;
13202 
13203 struct TEXTRANGE
13204 {
13205  CHARRANGE chrg;
13206  LPSTR lpstrText;
13207 }
13208 
13209 alias TEXTRANGE _TEXTRANGE;
13210 alias TEXTRANGE TTEXTRANGE;
13211 alias TEXTRANGE* PTEXTRANGE;
13212 
13213 struct TIME_ZONE_INFORMATION
13214 {
13215  LONG Bias;
13216  WCHAR[1 + 31] StandardName;
13217  SYSTEMTIME StandardDate;
13218  LONG StandardBias;
13219  WCHAR[1 + 31] DaylightName;
13220  SYSTEMTIME DaylightDate;
13221  LONG DaylightBias;
13222 }
13223 
13224 alias TIME_ZONE_INFORMATION* LPTIME_ZONE_INFORMATION;
13225 alias TIME_ZONE_INFORMATION _TIME_ZONE_INFORMATION;
13226 alias TIME_ZONE_INFORMATION TTIMEZONEINFORMATION;
13227 alias TIME_ZONE_INFORMATION* PTIMEZONEINFORMATION;
13228 
13229 struct TOGGLEKEYS
13230 {
13231  DWORD cbSize;
13232  DWORD dwFlags;
13233 }
13234 
13235 alias TOGGLEKEYS TAGTOGGLEKEYS;
13236 alias TOGGLEKEYS TTOGGLEKEYS;
13237 alias TOGGLEKEYS* PTOGGLEKEYS;
13238 
13239 struct TOKEN_SOURCE
13240 {
13241  char[1 + 7] SourceName;
13242  LUID SourceIdentifier;
13243 }
13244 
13245 alias TOKEN_SOURCE _TOKEN_SOURCE;
13246 alias TOKEN_SOURCE TTOKENSOURCE;
13247 alias TOKEN_SOURCE* PTOKENSOURCE;
13248 
13249 struct TOKEN_CONTROL
13250 {
13251  LUID TokenId;
13252  LUID AuthenticationId;
13253  LUID ModifiedId;
13254  TOKEN_SOURCE TokenSource;
13255 }
13256 
13257 alias TOKEN_CONTROL _TOKEN_CONTROL;
13258 alias TOKEN_CONTROL TTOKENCONTROL;
13259 alias TOKEN_CONTROL* PTOKENCONTROL;
13260 
13261 struct TOKEN_DEFAULT_DACL
13262 {
13263  PACL DefaultDacl;
13264 }
13265 
13266 alias TOKEN_DEFAULT_DACL _TOKEN_DEFAULT_DACL;
13267 alias TOKEN_DEFAULT_DACL TTOKENDEFAULTDACL;
13268 alias TOKEN_DEFAULT_DACL* PTOKENDEFAULTDACL;
13269 
13270 struct TOKEN_GROUPS
13271 {
13272  DWORD GroupCount;
13273  SID_AND_ATTRIBUTES[1 + ANYSIZE_ARRAY-1] Groups;
13274 }
13275 
13276 alias TOKEN_GROUPS* PTOKEN_GROUPS;
13277 alias TOKEN_GROUPS* LPTOKEN_GROUPS;
13278 alias TOKEN_GROUPS _TOKEN_GROUPS;
13279 alias TOKEN_GROUPS TTOKENGROUPS;
13280 alias TOKEN_GROUPS* PTOKENGROUPS;
13281 
13282 struct TOKEN_OWNER
13283 {
13284  PSID Owner;
13285 }
13286 
13287 alias TOKEN_OWNER _TOKEN_OWNER;
13288 alias TOKEN_OWNER TTOKENOWNER;
13289 alias TOKEN_OWNER* PTOKENOWNER;
13290 
13291 struct TOKEN_PRIMARY_GROUP
13292 {
13293  PSID PrimaryGroup;
13294 }
13295 
13296 alias TOKEN_PRIMARY_GROUP _TOKEN_PRIMARY_GROUP;
13297 alias TOKEN_PRIMARY_GROUP TTOKENPRIMARYGROUP;
13298 alias TOKEN_PRIMARY_GROUP* PTOKENPRIMARYGROUP;
13299 
13300 struct TOKEN_PRIVILEGES
13301 {
13302  DWORD PrivilegeCount;
13303  LUID_AND_ATTRIBUTES[ANYSIZE_ARRAY] Privileges;
13304 }
13305 
13306 alias TOKEN_PRIVILEGES* PTOKEN_PRIVILEGES;
13307 alias TOKEN_PRIVILEGES* LPTOKEN_PRIVILEGES;
13308 alias TOKEN_PRIVILEGES _TOKEN_PRIVILEGES;
13309 alias TOKEN_PRIVILEGES TTOKENPRIVILEGES;
13310 alias TOKEN_PRIVILEGES* PTOKENPRIVILEGES;
13311 
13312 struct TOKEN_STATISTICS
13313 {
13314  LUID TokenId;
13315  LUID AuthenticationId;
13316  LARGE_INTEGER ExpirationTime;
13317  TOKEN_TYPE TokenType;
13318  SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
13319  DWORD DynamicCharged;
13320  DWORD DynamicAvailable;
13321  DWORD GroupCount;
13322  DWORD PrivilegeCount;
13323  LUID ModifiedId;
13324 }
13325 
13326 alias TOKEN_STATISTICS _TOKEN_STATISTICS;
13327 alias TOKEN_STATISTICS TTOKENSTATISTICS;
13328 alias TOKEN_STATISTICS* PTOKENSTATISTICS;
13329 
13330 struct TOKEN_USER
13331 {
13332  SID_AND_ATTRIBUTES User;
13333 }
13334 
13335 alias TOKEN_USER _TOKEN_USER;
13336 alias TOKEN_USER TTOKENUSER;
13337 alias TOKEN_USER* PTOKENUSER;
13338 
13339 struct TOOLINFOA
13340 {
13341  UINT cbSize;
13342  UINT uFlags;
13343  HWND hwnd;
13344  UINT uId;
13345  RECT rect;
13346  HINST hinst;
13347  LPSTR lpszText;
13348 //if (_WIN32_IE >= 0x0300)
13349  LPARAM lParam;
13350 //endif
13351 //if (_WIN32_WINNT >= 0x0501)
13352  void *lpReserved;
13353 //endif
13354 }
13355 struct TOOLINFOW
13356 {
13357  UINT cbSize;
13358  UINT uFlags;
13359  HWND hwnd;
13360  UINT uId;
13361  RECT rect;
13362  HINST hinst;
13363  LPWSTR lpszText;
13364 //if (_WIN32_IE >= 0x0300)
13365  LPARAM lParam;
13366 //endif
13367 //if (_WIN32_WINNT >= 0x0501)
13368  void *lpReserved;
13369 //endif
13370 
13371 }
13372 version(Win32SansUnicode)
13373 {
13374  alias TOOLINFOA TOOLINFO;
13375 }
13376 else
13377 {
13378  alias TOOLINFOW TOOLINFO;
13379 }
13380 alias TOOLINFO* LPTOOLINFO;
13381 alias TOOLINFO TTOOLINFO;
13382 alias TOOLINFO* PTOOLINFO;
13383 
13384 struct NMTTDISPINFOA 
13385 {
13386  NMHDR hdr;
13387  LPSTR lpszText;
13388  char[80] szText;
13389  HINSTANCE hinst;
13390  UINT uFlags;
13391  LPARAM lParam;
13392 }
13393 
13394 struct NMTTDISPINFOW 
13395 {
13396  NMHDR hdr;
13397  LPWSTR lpszText;
13398  WCHAR[80] szText;
13399  HINSTANCE hinst;
13400  UINT uFlags;
13401  LPARAM lParam;
13402 }
13403 version(Win32SansUnicode){
13404  alias NMTTDISPINFOA NMTTDISPINFO;
13405 } else {
13406  alias NMTTDISPINFOW NMTTDISPINFO;
13407 }
13408 
13409 
13410 alias NMTTDISPINFOA TOOLTIPTEXTA;
13411 alias NMTTDISPINFOW TOOLTIPTEXTW;
13412 version(Win32SansUnicode)
13413 {
13414  alias TOOLTIPTEXTA TOOLTIPTEXT;
13415 }
13416 else
13417 {
13418  alias TOOLTIPTEXTW TOOLTIPTEXT;
13419 }
13420 alias TOOLTIPTEXT* LPTOOLTIPTEXT;
13421 alias TOOLTIPTEXT TTOOLTIPTEXT;
13422 alias TOOLTIPTEXT* PTOOLTIPTEXT;
13423 
13424 struct TPMPARAMS
13425 {
13426  UINT cbSize;
13427  RECT rcExclude;
13428 }
13429 
13430 alias TPMPARAMS* LPTPMPARAMS;
13431 alias TPMPARAMS TAGTPMPARAMS;
13432 alias TPMPARAMS TTPMPARAMS;
13433 alias TPMPARAMS* PTPMPARAMS;
13434 
13435 struct TRANSMIT_FILE_BUFFERS
13436 {
13437  PVOID Head;
13438  DWORD HeadLength;
13439  PVOID Tail;
13440  DWORD TailLength;
13441 }
13442 
13443 alias TRANSMIT_FILE_BUFFERS _TRANSMIT_FILE_BUFFERS;
13444 alias TRANSMIT_FILE_BUFFERS TTRANSMITFILEBUFFERS;
13445 alias TRANSMIT_FILE_BUFFERS* PTRANSMITFILEBUFFERS;
13446 
13447 struct TTHITTESTINFO
13448 {
13449  HWND hwnd;
13450  POINT pt;
13451  TOOLINFO ti;
13452 }
13453 
13454 alias TTHITTESTINFO* LPHITTESTINFO;
13455 alias TTHITTESTINFO _TT_HITTESTINFO;
13456 alias TTHITTESTINFO TTTHITTESTINFO;
13457 alias TTHITTESTINFO* PTTHITTESTINFO;
13458 
13459 struct TTPOLYCURVE
13460 {
13461  ushort wType;
13462  ushort cpfx;
13463  POINTFX[1 + 0] apfx;
13464 }
13465 
13466 alias TTPOLYCURVE* LPTTPOLYCURVE;
13467 alias TTPOLYCURVE TAGTTPOLYCURVE;
13468 alias TTPOLYCURVE TTTPOLYCURVE;
13469 alias TTPOLYCURVE* PTTPOLYCURVE;
13470 
13471 struct TTPOLYGONHEADER
13472 {
13473  DWORD cb;
13474  DWORD dwType;
13475  POINTFX pfxStart;
13476 }
13477 
13478 alias TTPOLYGONHEADER* LPTTPOLYGONHEADER;
13479 alias TTPOLYGONHEADER _TTPOLYGONHEADER;
13480 alias TTPOLYGONHEADER TTTPOLYGONHEADER;
13481 alias TTPOLYGONHEADER* PTTPOLYGONHEADER;
13482 
13483 struct TV_DISPINFO
13484 {
13485  NMHDR hdr;
13486  TV_ITEM item;
13487 }
13488 
13489 alias TV_DISPINFO _TV_DISPINFO;
13490 alias TV_DISPINFO TTVDISPINFO;
13491 alias TV_DISPINFO* PTVDISPINFO;
13492 
13493 struct TV_HITTESTINFO
13494 {
13495  POINT pt;
13496  UINT flags;
13497  HTREEITEM hItem;
13498 }
13499 
13500 alias TV_HITTESTINFO* LPTV_HITTESTINFO;
13501 alias TV_HITTESTINFO _TVHITTESTINFO;
13502 alias TV_HITTESTINFO TTVHITTESTINFO;
13503 alias TV_HITTESTINFO* PTVHITTESTINFO;
13504 
13505 struct TVINSERTSTRUCTA
13506 {
13507  HTREEITEM hParent;
13508  HTREEITEM hInsertAfter;
13509  union {
13510   TVITEMEXA itemex;
13511   TVITEMA item;
13512  }
13513 }
13514 struct TVINSERTSTRUCTW
13515 {
13516  HTREEITEM hParent;
13517  HTREEITEM hInsertAfter;
13518  union {
13519   TVITEMEXW itemex;
13520   TVITEMW item;
13521  }
13522 }
13523 version(Win32SansUnicode)
13524 {
13525  alias TVINSERTSTRUCTA TVINSERTSTRUCT;
13526 }
13527 else
13528 {
13529  alias TVINSERTSTRUCTW TVINSERTSTRUCT;
13530 }
13531 
13532 alias TVINSERTSTRUCT  TV_INSERTSTRUCT;
13533 alias TVINSERTSTRUCT* LPTV_INSERTSTRUCT;
13534 alias TVINSERTSTRUCT _TV_INSERTSTRUCT;
13535 alias TVINSERTSTRUCT TTVINSERTSTRUCT;
13536 alias TVINSERTSTRUCT* PTVINSERTSTRUCT;
13537 
13538 align(2) struct TV_KEYDOWN
13539 {
13540  NMHDR hdr;
13541  ushort wVKey;
13542  UINT flags;
13543 }
13544 
13545 alias TV_KEYDOWN _TV_KEYDOWN;
13546 alias TV_KEYDOWN TTVKEYDOWN;
13547 alias TV_KEYDOWN* PTVKEYDOWN;
13548 
13549 struct TV_SORTCB
13550 {
13551  HTREEITEM hParent;
13552  PFNTVCOMPARE lpfnCompare;
13553  LPARAM lParam;
13554 }
13555 
13556 alias TV_SORTCB* LPTV_SORTCB;
13557 alias TV_SORTCB _TV_SORTCB;
13558 alias TV_SORTCB TTVSORTCB;
13559 alias TV_SORTCB* PTVSORTCB;
13560 
13561 struct UDACCEL
13562 {
13563  UINT nSec;
13564  UINT nInc;
13565 }
13566 
13567 alias UDACCEL TUDACCEL;
13568 alias UDACCEL* PUDACCEL;
13569 
13570 union ULARGE_INTEGER
13571 {
13572  struct
13573  {
13574   DWORD LowPart;
13575   DWORD HighPart;
13576  };
13577  struct u
13578  {
13579   DWORD LowPart;
13580   DWORD HighPart;
13581  };
13582  DWORDLONG QuadPart;
13583 }
13584 alias ULARGE_INTEGER* PULARGE_INTEGER;
13585 alias ULARGE_INTEGER _ULARGE_INTEGER;
13586 alias ULARGE_INTEGER TULARGEINTEGER;
13587 alias ULARGE_INTEGER* PULARGEINTEGER;
13588 
13589 struct UNIVERSAL_NAME_INFO
13590 {
13591  LPTSTR lpUniversalName;
13592 }
13593 
13594 alias UNIVERSAL_NAME_INFO _UNIVERSAL_NAME_INFO;
13595 alias UNIVERSAL_NAME_INFO TUNIVERSALNAMEINFO;
13596 alias UNIVERSAL_NAME_INFO* PUNIVERSALNAMEINFO;
13597 
13598 struct USEROBJECTFLAGS
13599 {
13600  WINBOOL fInherit;
13601  WINBOOL fReserved;
13602  DWORD dwFlags;
13603 }
13604 
13605 alias USEROBJECTFLAGS TAGUSEROBJECTFLAGS;
13606 alias USEROBJECTFLAGS TUSEROBJECTFLAGS;
13607 alias USEROBJECTFLAGS* PUSEROBJECTFLAGS;
13608 
13609 struct VALENT
13610 {
13611  LPTSTR ve_valuename;
13612  DWORD ve_valuelen;
13613  DWORD ve_valueptr;
13614  DWORD ve_type;
13615 }
13616 
13617 alias VALENT TVALENT;
13618 alias VALENT* PVALENT;
13619 alias VALENT VALUE_ENT;
13620 alias VALENT TVALUE_ENT;
13621 alias VALENT* PVALUE_ENT;
13622 
13623 struct VERIFY_INFORMATION
13624 {
13625  LARGE_INTEGER StartingOffset;
13626  DWORD Length;
13627 }
13628 
13629 alias VERIFY_INFORMATION _VERIFY_INFORMATION;
13630 alias VERIFY_INFORMATION TVERIFYINFORMATION;
13631 alias VERIFY_INFORMATION* PVERIFYINFORMATION;
13632 
13633 struct VS_FIXEDFILEINFO
13634 {
13635  DWORD dwSignature;
13636  DWORD dwStrucVersion;
13637  DWORD dwFileVersionMS;
13638  DWORD dwFileVersionLS;
13639  DWORD dwProductVersionMS;
13640  DWORD dwProductVersionLS;
13641  DWORD dwFileFlagsMask;
13642  DWORD dwFileFlags;
13643  DWORD dwFileOS;
13644  DWORD dwFileType;
13645  DWORD dwFileSubtype;
13646  DWORD dwFileDateMS;
13647  DWORD dwFileDateLS;
13648 }
13649 
13650 alias VS_FIXEDFILEINFO _VS_FIXEDFILEINFO;
13651 alias VS_FIXEDFILEINFO TVSFIXEDFILEINFO;
13652 alias VS_FIXEDFILEINFO* PVSFIXEDFILEINFO;
13653 
13654 struct WIN32_FIND_DATA
13655 {
13656  DWORD dwFileAttributes;
13657  FILETIME ftCreationTime;
13658  FILETIME ftLastAccessTime;
13659  FILETIME ftLastWriteTime;
13660  DWORD nFileSizeHigh;
13661  DWORD nFileSizeLow;
13662  DWORD dwReserved0;
13663  DWORD dwReserved1;
13664  TCHAR[1 + MAX_PATH-1] cFileName;
13665  TCHAR[1 + 13] cAlternateFileName;
13666 }
13667 
13668 alias WIN32_FIND_DATA* LPWIN32_FIND_DATA;
13669 alias WIN32_FIND_DATA* PWIN32_FIND_DATA;
13670 alias WIN32_FIND_DATA _WIN32_FIND_DATA;
13671 alias WIN32_FIND_DATA TWIN32FINDDATA;
13672 alias WIN32_FIND_DATA TWIN32FINDDATAA;
13673 alias WIN32_FIND_DATA* PWIN32FINDDATA;
13674 
13675 struct WIN32_FIND_DATAW 
13676 {
13677  DWORD dwFileAttributes;
13678  FILETIME ftCreationTime;
13679  FILETIME ftLastAccessTime;
13680  FILETIME ftLastWriteTime;
13681  DWORD nFileSizeHigh;
13682  DWORD nFileSizeLow;
13683  DWORD dwReserved0;
13684  DWORD dwReserved1;
13685  WCHAR[MAX_PATH]  cFileName;
13686  WCHAR[14]  cAlternateFileName;
13687 }
13688 
13689 alias WIN32_FIND_DATAW* LPWIN32_FIND_DATAW;
13690 alias WIN32_FIND_DATAW* PWIN32_FIND_DATAW;
13691 
13692 struct WIN32_FILE_ATTRIBUTE_DATA 
13693 {
13694   DWORD dwFileAttributes;
13695   FILETIME ftCreationTime;
13696   FILETIME ftLastAccessTime;
13697   FILETIME ftLastWriteTime;
13698   DWORD nFileSizeHigh;
13699   DWORD nFileSizeLow;
13700 }
13701 
13702 enum {
13703  GetFileInfoLevelStandard,
13704  GetFileInfoLevelMax
13705 }
13706 
13707 struct WIN32_STREAM_ID
13708 {
13709  DWORD dwStreamId;
13710  DWORD dwStreamAttributes;
13711  LARGE_INTEGER Size;
13712  DWORD dwStreamNameSize;
13713  WCHAR* cStreamName;
13714 }
13715 
13716 alias WIN32_STREAM_ID _WIN32_STREAM_ID;
13717 alias WIN32_STREAM_ID TWIN32STREAMID;
13718 alias WIN32_STREAM_ID* PWIN32STREAMID;
13719 
13720 struct WINDOWPLACEMENT
13721 {
13722  UINT length;
13723  UINT flags;
13724  UINT showCmd;
13725  POINT ptMinPosition;
13726  POINT ptMaxPosition;
13727  RECT rcNormalPosition;
13728 }
13729 
13730 alias WINDOWPLACEMENT _WINDOWPLACEMENT;
13731 alias WINDOWPLACEMENT TWINDOWPLACEMENT;
13732 alias WINDOWPLACEMENT* PWINDOWPLACEMENT;
13733 
13734 struct WNDCLASSA
13735 {
13736  UINT style;
13737  WNDPROC lpfnWndProc;
13738  int cbClsExtra;
13739  int cbWndExtra;
13740  HANDLE hInstance;
13741  HICON hIcon;
13742  HCURSOR hCursor;
13743  HBRUSH hbrBackground;
13744  LPCSTR lpszMenuName;
13745  LPCSTR lpszClassName;
13746 }
13747 
13748 alias WNDCLASSA* PWNDCLASSA, LPWNDCLASSA;
13749 
13750 struct WNDCLASSW
13751 {
13752  UINT  style;
13753  WNDPROC  lpfnWndProc;
13754  int   cbClsExtra;
13755  int   cbWndExtra;
13756  HINSTANCE   hInstance;
13757  HICON    hIcon;
13758  HCURSOR  hCursor;
13759  HBRUSH   hbrBackground;
13760  LPCWSTR  lpszMenuName;
13761  LPCWSTR  lpszClassName;
13762 }
13763 
13764 alias WNDCLASSW* PWNDCLASSW, LPWNDCLASSW;
13765 
13766 version(Win32SansUnicode)
13767 {
13768  alias WNDCLASSA WNDCLASS;
13769 }
13770 else
13771 {
13772  alias WNDCLASSW WNDCLASS;
13773 }
13774 alias WNDCLASS* LPWNDCLASS;
13775 alias WNDCLASS _WNDCLASS;
13776 alias WNDCLASS TWNDCLASS;
13777 alias WNDCLASS WNDCLASS_T;
13778 alias WNDCLASS* PWNDCLASS;
13779 
13780 struct WNDCLASSEX
13781 {
13782  UINT cbSize;
13783  UINT style;
13784  WNDPROC lpfnWndProc;
13785  int cbClsExtra;
13786  int cbWndExtra;
13787  HANDLE hInstance;
13788  HICON hIcon;
13789  HCURSOR hCursor;
13790  HBRUSH hbrBackground;
13791  LPCTSTR lpszMenuName;
13792  LPCTSTR lpszClassName;
13793  HANDLE hIconSm;
13794 }
13795 
13796 alias WNDCLASSEX* LPWNDCLASSEX;
13797 alias WNDCLASSEX _WNDCLASSEX;
13798 alias WNDCLASSEX TWNDCLASSEX;
13799 alias WNDCLASSEX TWNDCLASSEXA;
13800 alias WNDCLASSEX* PWNDCLASSEX;
13801 
13802 struct CONNECTDLGSTRUCT
13803 {
13804  DWORD cbStructure;
13805  HWND hwndOwner;
13806  LPNETRESOURCE lpConnRes;
13807  DWORD dwFlags;
13808  DWORD dwDevNum;
13809 }
13810 
13811 alias CONNECTDLGSTRUCT* LPCONNECTDLGSTRUCT;
13812 alias CONNECTDLGSTRUCT _CONNECTDLGSTRUCT;
13813 alias CONNECTDLGSTRUCT TCONNECTDLGSTRUCT;
13814 alias CONNECTDLGSTRUCT* PCONNECTDLGSTRUCT;
13815 
13816 struct DISCDLGSTRUCT
13817 {
13818  DWORD cbStructure;
13819  HWND hwndOwner;
13820  LPTSTR lpLocalName;
13821  LPTSTR lpRemoteName;
13822  DWORD dwFlags;
13823 }
13824 
13825 alias DISCDLGSTRUCT* LPDISCDLGSTRUCT;
13826 alias DISCDLGSTRUCT _DISCDLGSTRUCT;
13827 alias DISCDLGSTRUCT TDISCDLGSTRUCT;
13828 alias DISCDLGSTRUCT TDISCDLGSTRUCTA;
13829 alias DISCDLGSTRUCT* PDISCDLGSTRUCT;
13830 
13831 struct NETINFOSTRUCT
13832 {
13833  DWORD cbStructure;
13834  DWORD dwProviderVersion;
13835  DWORD dwStatus;
13836  DWORD dwCharacteristics;
13837  DWORD dwHandle;
13838  ushort wNetType;
13839  DWORD dwPrinters;
13840  DWORD dwDrives;
13841 }
13842 
13843 alias NETINFOSTRUCT* LPNETINFOSTRUCT;
13844 alias NETINFOSTRUCT _NETINFOSTRUCT;
13845 alias NETINFOSTRUCT TNETINFOSTRUCT;
13846 alias NETINFOSTRUCT* PNETINFOSTRUCT;
13847 
13848 struct NETCONNECTINFOSTRUCT
13849 {
13850  DWORD cbStructure;
13851  DWORD dwFlags;
13852  DWORD dwSpeed;
13853  DWORD dwDelay;
13854  DWORD dwOptDataSize;
13855 }
13856 
13857 alias NETCONNECTINFOSTRUCT* LPNETCONNECTINFOSTRUCT;
13858 alias NETCONNECTINFOSTRUCT _NETCONNECTINFOSTRUCT;
13859 alias NETCONNECTINFOSTRUCT TNETCONNECTINFOSTRUCT;
13860 alias NETCONNECTINFOSTRUCT* PNETCONNECTINFOSTRUCT;
13861 extern(Windows){
13862 alias int function(HDC, HANDLETABLE*, METARECORD*, int, LPARAM) ENUMMETAFILEPROC;
13863 alias int function(HDC, HANDLETABLE*, ENHMETARECORD*, int, LPARAM) ENHMETAFILEPROC;
13864 alias int function(LPLOGFONT, LPTEXTMETRIC, DWORD, LPARAM) ENUMFONTSPROC;
13865 alias int function(ENUMLOGFONT*, NEWTEXTMETRIC*, int, LPARAM) FONTENUMPROC;
13866 alias int function(ENUMLOGFONTEX*, NEWTEXTMETRICEX*, int, LPARAM) FONTENUMEXPROC;
13867 alias void function(DWORD, DWORD) LPOVERLAPPED_COMPLETION_ROUTINE;
13868 }
13869 
13870 struct POINTFLOAT
13871 {
13872  FLOAT x;
13873  FLOAT y;
13874 }
13875 
13876 alias POINTFLOAT _POINTFLOAT;
13877 alias POINTFLOAT TPOINTFLOAT;
13878 alias POINTFLOAT* PPOINTFLOAT;
13879 
13880 struct GLYPHMETRICSFLOAT
13881 {
13882  FLOAT gmfBlackBoxX;
13883  FLOAT gmfBlackBoxY;
13884  POINTFLOAT gmfptGlyphOrigin;
13885  FLOAT gmfCellIncX;
13886  FLOAT gmfCellIncY;
13887 }
13888 
13889 alias GLYPHMETRICSFLOAT* LPGLYPHMETRICSFLOAT;
13890 alias GLYPHMETRICSFLOAT _GLYPHMETRICSFLOAT;
13891 alias GLYPHMETRICSFLOAT TGLYPHMETRICSFLOAT;
13892 alias GLYPHMETRICSFLOAT* PGLYPHMETRICSFLOAT;
13893 
13894 struct LAYERPLANEDESCRIPTOR
13895 {
13896  ushort nSize;
13897  ushort nVersion;
13898  DWORD dwFlags;
13899  ubyte iPixelType;
13900  ubyte cColorBits;
13901  ubyte cRedBits;
13902  ubyte cRedShift;
13903  ubyte cGreenBits;
13904  ubyte cGreenShift;
13905  ubyte cBlueBits;
13906  ubyte cBlueShift;
13907  ubyte cAlphaBits;
13908  ubyte cAlphaShift;
13909  ubyte cAccumBits;
13910  ubyte cAccumRedBits;
13911  ubyte cAccumGreenBits;
13912  ubyte cAccumBlueBits;
13913  ubyte cAccumAlphaBits;
13914  ubyte cDepthBits;
13915  ubyte cStencilBits;
13916  ubyte cAuxBuffers;
13917  ubyte iLayerPlane;
13918  ubyte bReserved;
13919  COLORREF crTransparent;
13920 }
13921 
13922 alias LAYERPLANEDESCRIPTOR* LPLAYERPLANEDESCRIPTOR;
13923 alias LAYERPLANEDESCRIPTOR TAGLAYERPLANEDESCRIPTOR;
13924 alias LAYERPLANEDESCRIPTOR TLAYERPLANEDESCRIPTOR;
13925 alias LAYERPLANEDESCRIPTOR* PLAYERPLANEDESCRIPTOR;
13926 
13927 struct PIXELFORMATDESCRIPTOR
13928 {
13929  ushort nSize;
13930  ushort nVersion;
13931  DWORD dwFlags;
13932  ubyte iPixelType;
13933  ubyte cColorBits;
13934  ubyte cRedBits;
13935  ubyte cRedShift;
13936  ubyte cGreenBits;
13937  ubyte cGreenShift;
13938  ubyte cBlueBits;
13939  ubyte cBlueShift;
13940  ubyte cAlphaBits;
13941  ubyte cAlphaShift;
13942  ubyte cAccumBits;
13943  ubyte cAccumRedBits;
13944  ubyte cAccumGreenBits;
13945  ubyte cAccumBlueBits;
13946  ubyte cAccumAlphaBits;
13947  ubyte cDepthBits;
13948  ubyte cStencilBits;
13949  ubyte cAuxBuffers;
13950  ubyte iLayerType;
13951  ubyte bReserved;
13952  DWORD dwLayerMask;
13953  DWORD dwVisibleMask;
13954  DWORD dwDamageMask;
13955 }
13956 
13957 alias PIXELFORMATDESCRIPTOR* LPPIXELFORMATDESCRIPTOR;
13958 alias PIXELFORMATDESCRIPTOR TAGPIXELFORMATDESCRIPTOR;
13959 alias PIXELFORMATDESCRIPTOR TPIXELFORMATDESCRIPTOR;
13960 alias PIXELFORMATDESCRIPTOR* PPIXELFORMATDESCRIPTOR;
13961 
13962 struct USER_INFO_2
13963 {
13964  LPWSTR usri2_name;
13965  LPWSTR usri2_password;
13966  DWORD usri2_password_age;
13967  DWORD usri2_priv;
13968  LPWSTR usri2_home_dir;
13969  LPWSTR usri2_comment;
13970  DWORD usri2_flags;
13971  LPWSTR usri2_script_path;
13972  DWORD usri2_auth_flags;
13973  LPWSTR usri2_full_name;
13974  LPWSTR usri2_usr_comment;
13975  LPWSTR usri2_parms;
13976  LPWSTR usri2_workstations;
13977  DWORD usri2_last_logon;
13978  DWORD usri2_last_logoff;
13979  DWORD usri2_acct_expires;
13980  DWORD usri2_max_storage;
13981  DWORD usri2_units_per_week;
13982  PBYTE usri2_logon_hours;
13983  DWORD usri2_bad_pw_count;
13984  DWORD usri2_num_logons;
13985  LPWSTR usri2_logon_server;
13986  DWORD usri2_country_code;
13987  DWORD usri2_code_page;
13988 }
13989 
13990 alias USER_INFO_2* PUSER_INFO_2;
13991 alias USER_INFO_2* LPUSER_INFO_2;
13992 alias USER_INFO_2 TUSERINFO2;
13993 alias USER_INFO_2* PUSERINFO2;
13994 
13995 struct USER_INFO_0
13996 {
13997  LPWSTR usri0_name;
13998 }
13999 
14000 alias USER_INFO_0* PUSER_INFO_0;
14001 alias USER_INFO_0* LPUSER_INFO_0;
14002 alias USER_INFO_0 TUSERINFO0;
14003 alias USER_INFO_0* PUSERINFO0;
14004 
14005 struct USER_INFO_3
14006 {
14007  LPWSTR usri3_name;
14008  LPWSTR usri3_password;
14009  DWORD usri3_password_age;
14010  DWORD usri3_priv;
14011  LPWSTR usri3_home_dir;
14012  LPWSTR usri3_comment;
14013  DWORD usri3_flags;
14014  LPWSTR usri3_script_path;
14015  DWORD usri3_auth_flags;
14016  LPWSTR usri3_full_name;
14017  LPWSTR usri3_usr_comment;
14018  LPWSTR usri3_parms;
14019  LPWSTR usri3_workstations;
14020  DWORD usri3_last_logon;
14021  DWORD usri3_last_logoff;
14022  DWORD usri3_acct_expires;
14023  DWORD usri3_max_storage;
14024  DWORD usri3_units_per_week;
14025  PBYTE usri3_logon_hours;
14026  DWORD usri3_bad_pw_count;
14027  DWORD usri3_num_logons;
14028  LPWSTR usri3_logon_server;
14029  DWORD usri3_country_code;
14030  DWORD usri3_code_page;
14031  DWORD usri3_user_id;
14032  DWORD usri3_primary_group_id;
14033  LPWSTR usri3_profile;
14034  LPWSTR usri3_home_dir_drive;
14035  DWORD usri3_password_expired;
14036 }
14037 
14038 alias USER_INFO_3* PUSER_INFO_3;
14039 alias USER_INFO_3* LPUSER_INFO_3;
14040 alias USER_INFO_3 TUSERINFO3;
14041 alias USER_INFO_3* PUSERINFO3;
14042 
14043 struct GROUP_INFO_2
14044 {
14045  LPWSTR grpi2_name;
14046  LPWSTR grpi2_comment;
14047  DWORD grpi2_group_id;
14048  DWORD grpi2_attributes;
14049 }
14050 
14051 alias GROUP_INFO_2* PGROUP_INFO_2;
14052 alias GROUP_INFO_2 TGROUPINFO2;
14053 alias GROUP_INFO_2* PGROUPINFO2;
14054 
14055 struct LOCALGROUP_INFO_0
14056 {
14057  LPWSTR lgrpi0_name;
14058 }
14059 
14060 alias LOCALGROUP_INFO_0* PLOCALGROUP_INFO_0;
14061 alias LOCALGROUP_INFO_0* LPLOCALGROUP_INFO_0;
14062 alias LOCALGROUP_INFO_0 TLOCALGROUPINFO0;
14063 alias LOCALGROUP_INFO_0* PLOCALGROUPINFO0;
14064 
14065 struct IMAGE_DOS_HEADER
14066 {
14067  ushort e_magic;
14068  ushort e_cblp;
14069  ushort e_cp;
14070  ushort e_crlc;
14071  ushort e_cparhdr;
14072  ushort e_minalloc;
14073  ushort e_maxalloc;
14074  ushort e_ss;
14075  ushort e_sp;
14076  ushort e_csum;
14077  ushort e_ip;
14078  ushort e_cs;
14079  ushort e_lfarlc;
14080  ushort e_ovno;
14081  ushort[1 + 3] e_res;
14082  ushort e_oemid;
14083  ushort e_oeminfo;
14084  ushort[1 + 9] e_res2;
14085  LONG e_lfanew;
14086 }
14087 
14088 alias IMAGE_DOS_HEADER* PIMAGE_DOS_HEADER;
14089 alias IMAGE_DOS_HEADER TIMAGEDOSHEADER;
14090 alias IMAGE_DOS_HEADER* PIMAGEDOSHEADER;
14091 alias ushort TVARTYPE;
14092 alias TVARIANT* PVARIANT;
14093 
14094 struct TVARIANT
14095 {
14096  TVARTYPE vt;
14097  ushort wReserved1;
14098  ushort wReserved2;
14099  ushort wReserved3;
14100 
14101  union
14102  {
14103   struct
14104   {
14105    ubyte bVal;
14106   }
14107   struct
14108   {
14109    byte iVal;
14110   }
14111   struct
14112   {
14113    int lVal;
14114   }
14115   struct
14116   {
14117    float fltVal;
14118   }
14119   struct
14120   {
14121    double dblVal;
14122   }
14123   struct
14124   {
14125    ushort vbool;
14126   }
14127   struct
14128   {
14129    HRESULT scode;
14130   }
14131   struct
14132   {
14133    ubyte* pbVal;
14134   }
14135   struct
14136   {
14137    byte* piVal;
14138   }
14139   struct
14140   {
14141    int* plVal;
14142   }
14143   struct
14144   {
14145    float* pfltVal;
14146   }
14147   struct
14148   {
14149    double* pdblVal;
14150   }
14151   struct
14152   {
14153    ushort* pbool;
14154   }
14155   struct
14156   {
14157    HRESULT* pscode;
14158   }
14159   struct
14160   {
14161    POINTER byRef;
14162   }
14163  }
14164 }
14165 
14166 alias TVARIANT VARIANT;
14167 alias int MMRESULT;
14168 alias TWAVEFORMATEX* PWAVEFORMATEX;
14169 alias TWAVEFORMATEX WAVEFORMATEX;
14170 
14171 align(1) struct TWAVEFORMATEX
14172 {
14173  ushort wFormatTag;
14174  ushort nChannels;
14175  DWORD nSamplesPerSec;
14176  DWORD nAvgBytesPerSec;
14177  ushort nBlockAlign;
14178  ushort wBitsPerSample;
14179  ushort cbSize;
14180 }
14181 
14182 alias CRITICAL_SECTION TRTLCRITICALSECTION;
14183 alias PCRITICAL_SECTION PRTLCRITICALSECTION;
14184 alias PGUID PIID;
14185 alias TGUID TIID;
14186 alias HANDLE THANDLE;
14187 alias TSMALLRECT* PSMALLRECT;
14188 alias SMALL_RECT TSMALLRECT;
14189 alias TCHARINFO* PCHARINFO;
14190 alias _CHAR_INFO TCHARINFO;
14191 alias POINTER TFARPROC;
14192 alias POINTER TFNDLGPROC;
14193 alias POINTER TFNTHREADSTARTROUTINE;
14194 
14195 struct _OBJECT_TYPE_LIST
14196 {
14197  ushort Level;
14198  ushort Sbz;
14199  PGUID ObjectType;
14200 }
14201 
14202 alias _OBJECT_TYPE_LIST TOBJECTTYPELIST;
14203 alias TOBJECTTYPELIST* POBJECTTYPELIST;
14204 alias _OBJECT_TYPE_LIST OBJECT_TYPE_LIST;
14205 alias DWORD AUDIT_EVENT_TYPE;
14206 
14207 align(1) struct _BLENDFUNCTION
14208 {
14209  ubyte BlendOp;
14210  ubyte BlendFlags;
14211  ubyte SourceConstantAlpha;
14212  ubyte AlphaFormat;
14213 }
14214 
14215 alias _BLENDFUNCTION TBLENDFUNCTION;
14216 alias TBLENDFUNCTION* PBLENDFUNCTION;
14217 alias _BLENDFUNCTION BLENDFUNCTION;
14218 
14219 alias HANDLE HMONITOR;
14220 
14221 struct MONITORINFOEX
14222 {
14223  DWORD  cbSize;
14224  RECT   rcMonitor;
14225  RECT   rcWork;
14226  DWORD  dwFlags;
14227  TCHAR[CCHDEVICENAME]  szDevice;
14228 }
14229 alias MONITORINFOEX* LPMONITORINFOEX;
14230 
14231 struct MONITORINFO
14232 {
14233  DWORD  cbSize;
14234  RECT   rcMonitor;
14235  RECT   rcWork;
14236  DWORD  dwFlags;
14237 }
14238 alias MONITORINFO* LPMONITORINFO;
14239 
14240 struct WINDOWINFO
14241 {
14242  DWORD cbSize;
14243  RECT rcWindow;
14244  RECT rcClient;
14245  DWORD dwStyle;
14246  DWORD dwExStyle;
14247  DWORD dwWindowStatus;
14248  UINT cxWindowBorders;
14249  UINT cyWindowBorders;
14250  ATOM atomWindowType;
14251  short wCreatorVersion;
14252 };
14253 alias WINDOWINFO* PWINDOWINFO;
14254 alias WINDOWINFO* LPWINDOWINFO;
14255 
14256 enum : HRESULT
14257 {
14258  S_OK   = 0x00000000,
14259  S_FALSE   = 0x00000001,
14260  E_UNEXPECTED = 0x8000FFFF,
14261  E_NOTIMPL    = 0x80004001,
14262  E_OUTOFMEMORY   = 0x8007000E,
14263  E_INVALIDARG = 0x80070057,
14264  E_NOINTERFACE   = 0x80004002,
14265  E_POINTER    = 0x80004003,
14266  E_HANDLE  = 0x80070006,
14267  E_ABORT   = 0x80004004,
14268  E_FAIL    = 0x80004005,
14269  E_ACCESSDENIED  = 0x80070005,
14270  E_PENDING    = 0x8000000A,
14271 }
14272 
14273 /*
14274 int CO_E_INIT_TLS = (DWORD)((0x80004006));
14275 int CO_E_INIT_MEMORY_ALLOCATOR = (DWORD)((0x80004008));
14276 int CO_E_INIT_CLASS_CACHE = (DWORD)((0x80004009));
14277 int CO_E_INIT_RPC_CHANNEL = (DWORD)((0x8000400A));
14278 int CO_E_INIT_TLS_SET_CHANNEL_CONTROL = (DWORD)((0x8000400B));
14279 int CO_E_INIT_TLS_CHANNEL_CONTROL = (DWORD)((0x8000400C));
14280 int CO_E_INIT_UNACCEPTED_USER_ALLOCATOR = (DWORD)((0x8000400D));
14281 int CO_E_INIT_SCM_MUTEX_EXISTS = (DWORD)((0x8000400E));
14282 int CO_E_INIT_SCM_FILE_MAPPING_EXISTS = (DWORD)((0x8000400F));
14283 int CO_E_INIT_SCM_MAP_VIEW_OF_FILE = (DWORD)((0x80004010));
14284 int CO_E_INIT_SCM_EXEC_FAILURE = (DWORD)((0x80004011));
14285 int CO_E_INIT_ONLY_SINGLE_THREADED = (DWORD)((0x80004012));
14286 int CO_E_CANT_REMOTE = (DWORD)((0x80004013));
14287 int CO_E_BAD_SERVER_NAME = (DWORD)((0x80004014));
14288 int CO_E_WRONG_SERVER_IDENTITY = (DWORD)((0x80004015));
14289 int CO_E_OLE1DDE_DISABLED = (DWORD)((0x80004016));
14290 int CO_E_RUNAS_SYNTAX = (DWORD)((0x80004017));
14291 int CO_E_CREATEPROCESS_FAILURE = (DWORD)((0x80004018));
14292 int CO_E_RUNAS_CREATEPROCESS_FAILURE = (DWORD)((0x80004019));
14293 int CO_E_RUNAS_LOGON_FAILURE = (DWORD)((0x8000401A));
14294 int CO_E_LAUNCH_PERMSSION_DENIED = (DWORD)((0x8000401B));
14295 int CO_E_START_SERVICE_FAILURE = (DWORD)((0x8000401C));
14296 int CO_E_REMOTE_COMMUNICATION_FAILURE = (DWORD)((0x8000401D));
14297 int CO_E_SERVER_START_TIMEOUT = (DWORD)((0x8000401E));
14298 int CO_E_CLSREG_INCONSISTENT = (DWORD)((0x8000401F));
14299 int CO_E_IIDREG_INCONSISTENT = (DWORD)((0x80004020));
14300 int CO_E_NOT_SUPPORTED = (DWORD)((0x80004021));
14301 int CO_E_FIRST = (DWORD)((0x800401F0));
14302 int CO_E_LAST = (DWORD)((0x800401FF));
14303 int CO_S_FIRST = (0x401F0);
14304 int CO_E_NOTINITIALIZED = (DWORD)((0x800401F0));
14305 int CO_E_ALREADYINITIALIZED = (DWORD)((0x800401F1));
14306 int CO_E_CANTDETERMINECLASS = (DWORD)((0x800401F2));
14307 int CO_E_CLASSSTRING = (DWORD)((0x800401F3));
14308 int CO_E_IIDSTRING = (DWORD)((0x800401F4));
14309 int CO_E_APPNOTFOUND = (DWORD)((0x800401F5));
14310 int CO_E_APPSINGLEUSE = (DWORD)((0x800401F6));
14311 int CO_E_ERRORINAPP = (DWORD)((0x800401F7));
14312 int CO_E_DLLNOTFOUND = (DWORD)((0x800401F8));
14313 int CO_E_ERRORINDLL = (DWORD)((0x800401F9));
14314 int CO_E_WRONGOSFORAPP = (DWORD)((0x800401FA));
14315 int CO_E_OBJNOTREG = (DWORD)((0x800401FB));
14316 int CO_E_OBJISREG = (DWORD)((0x800401FC));
14317 int CO_E_OBJNOTCONNECTED = (DWORD)((0x800401FD));
14318 int CO_E_APPDIDNTREG = (DWORD)((0x800401FE));
14319 int CO_E_RELEASED = (DWORD)((0x800401FF));
14320 */