4 Declarations for all the Windows32 API Structures
6 Copyright (C) 1996 Free Software Foundation, Inc.
8 Author: Scott Christley <scottc@net-community.com>
11 This file is part of the Windows32 API Library.
13 This library is free software; you can redistribute it and/or
14 modify it under the terms of the GNU Library General Public
15 License as published by the Free Software Foundation; either
16 version 2 of the License, or (at your option) any later version.
18 This library is distributed in the hope that it will be useful,
19 but WITHOUT ANY WARRANTY; without even the implied warranty of
20 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21 Library General Public License for more details.
23 If you are interested in a warranty or support for this source code,
24 contact Scott Christley <scottc@net-community.com> for more information.
26 You should have received a copy of the GNU Library General Public
27 License along with this library; see the file COPYING.LIB.
28 If not, write to the Free Software Foundation,
29 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
33 #ifndef _GNU_H_WINDOWS32_STRUCTURES
34 #define _GNU_H_WINDOWS32_STRUCTURES
37 #include <ntos/security.h>
38 #include <ntos/time.h>
39 #include <ntdll/rtl.h>
40 #include <ntos/console.h>
41 #include <ntos/keyboard.h>
42 #include <ntos/heap.h>
44 #include <ntos/file.h>
46 #include <ntos/disk.h>
47 #include <ntos/gditypes.h>
49 /* NOTE - _DISABLE_TIDENTS exists to keep ReactOS's source from
50 accidentally utilitizing ANSI/UNICODE-generic structs, defines
52 #ifndef _DISABLE_TIDENTS
54 # define typedef_tident(ident) typedef ident##W ident;
56 # define typedef_tident(ident) typedef ident##A ident;
59 # define typedef_tident(ident)
62 typedef struct _VALENT_A {
69 typedef struct _VALENT_W {
76 typedef_tident(VALENT)
77 typedef_tident(PVALENT)
79 #ifndef WIN32_LEAN_AND_MEAN
83 #endif /* __cplusplus */
91 typedef struct _ABCFLOAT {
95 } ABCFLOAT, *LPABCFLOAT;
97 typedef struct tagACCEL {
103 typedef struct tagACCESSTIMEOUT {
109 typedef struct _ACTION_HEADER {
115 typedef struct _ADAPTER_STATUS {
116 UCHAR adapter_address[6];
124 WORD iframe_recv_err;
128 WORD iframe_xmit_err;
129 WORD recv_buff_unavail;
136 WORD xmit_buf_unavail;
141 WORD max_sess_pkt_size;
145 typedef struct _ADDJOB_INFO_1A {
150 typedef struct _ADDJOB_INFO_1W {
155 typedef_tident(ADDJOB_INFO_1)
157 typedef struct tagANIMATIONINFO {
160 } ANIMATIONINFO, *LPANIMATIONINFO;
162 typedef struct _RECT {
167 } RECT, *LPRECT, *LPCRECT, *PRECT,
168 RECTL, *LPRECTL, *LPCRECTL, *PRECTL;
170 typedef struct _PATRECT {
173 } PATRECT, * PPATRECT;
176 typedef struct _RECTL {
181 } RECTL, *LPRECTL, *LPCRECTL, *PRECTL;
184 typedef struct _AppBarData {
187 UINT uCallbackMessage;
191 } APPBARDATA, *PAPPBARDATA;
193 typedef struct tagBITMAP
202 } BITMAP, *PBITMAP, *NPBITMAP, *LPBITMAP;
204 typedef struct tagBITMAPCOREHEADER {
212 typedef struct tagRGBTRIPLE {
216 } RGBTRIPLE, *PRGBTRIPLE;
218 typedef struct _BITMAPCOREINFO {
219 BITMAPCOREHEADER bmciHeader;
220 RGBTRIPLE bmciColors[1];
221 } BITMAPCOREINFO, *PBITMAPCOREINFO, *LPBITMAPCOREINFO;
223 typedef struct tagBITMAPFILEHEADER {
229 } PACKED BITMAPFILEHEADER;
231 typedef struct tagBITMAPINFOHEADER {
239 LONG biXPelsPerMeter;
240 LONG biYPelsPerMeter;
242 DWORD biClrImportant;
243 } BITMAPINFOHEADER, *LPBITMAPINFOHEADER, *PBITMAPINFOHEADER;
245 typedef struct tagRGBQUAD {
250 } RGBQUAD, *PRGBQUAD, *LPRGBQUAD;
252 typedef struct tagBITMAPINFO {
253 BITMAPINFOHEADER bmiHeader;
254 RGBQUAD bmiColors[1];
255 } BITMAPINFO, *LPBITMAPINFO, *PBITMAPINFO;
257 typedef long FXPT2DOT30, * LPFXPT2DOT30;
259 typedef struct tagCIEXYZ
265 typedef CIEXYZ * LPCIEXYZ;
267 typedef struct tagCIEXYZTRIPLE
273 typedef CIEXYZTRIPLE * LPCIEXYZTRIPLE;
281 DWORD bV4V4Compression;
283 LONG bV4XPelsPerMeter;
284 LONG bV4YPelsPerMeter;
286 DWORD bV4ClrImportant;
292 CIEXYZTRIPLE bV4Endpoints;
296 } BITMAPV4HEADER, *LPBITMAPV4HEADER, *PBITMAPV4HEADER;
298 #ifndef __BLOB_T_DEFINED
299 #define __BLOB_T_DEFINED
300 typedef struct _BLOB {
306 typedef struct _SHITEMID {
309 } SHITEMID, * LPSHITEMID;
310 typedef const SHITEMID * LPCSHITEMID;
312 typedef struct _ITEMIDLIST {
314 } ITEMIDLIST, * LPITEMIDLIST;
315 typedef const ITEMIDLIST * LPCITEMIDLIST;
317 typedef struct _browseinfo {
319 LPCITEMIDLIST pidlRoot;
320 LPSTR pszDisplayName;
326 } BROWSEINFO, *PBROWSEINFO, *LPBROWSEINFO;
328 typedef struct _BY_HANDLE_FILE_INFORMATION {
329 DWORD dwFileAttributes;
330 FILETIME ftCreationTime;
331 FILETIME ftLastAccessTime;
332 FILETIME ftLastWriteTime;
333 DWORD dwVolumeSerialNumber;
336 DWORD nNumberOfLinks;
337 DWORD nFileIndexHigh;
339 } BY_HANDLE_FILE_INFORMATION, *LPBY_HANDLE_FILE_INFORMATION;
341 typedef struct _FIXED {
346 typedef struct tagPOINT {
349 } POINT, *LPPOINT, *PPOINT;
351 typedef struct tagPOINTFX {
356 typedef struct _POINTL {
361 typedef struct tagPOINTS {
369 } MD4_CONTEXT, *PMD4_CONTEXT;
374 } MD5_CONTEXT, *PMD5_CONTEXT;
380 } SHA_CONTEXT, *PSHA_CONTEXT;
382 typedef struct _tagCANDIDATEFORM {
387 } CANDIDATEFORM, *LPCANDIDATEFORM;
389 typedef struct _tagCANDIDATELIST {
397 } CANDIDATELIST, *LPCANDIDATELIST;
399 typedef struct tagCREATESTRUCTA {
400 LPVOID lpCreateParams;
412 } CREATESTRUCTA, *LPCREATESTRUCTA;
414 typedef struct tagCREATESTRUCTW {
415 LPVOID lpCreateParams;
427 } CREATESTRUCTW, *LPCREATESTRUCTW;
429 typedef_tident(CREATESTRUCT)
430 typedef_tident(LPCREATESTRUCT)
432 typedef struct tagHW_PROFILE_INFOA {
434 CHAR szHwProfileGuid[HW_PROFILE_GUIDLEN];
435 CHAR szHwProfileName[MAX_PROFILE_LEN];
436 } HW_PROFILE_INFOA, *LPHW_PROFILE_INFOA;
437 typedef struct tagHW_PROFILE_INFOW {
439 WCHAR szHwProfileGuid[HW_PROFILE_GUIDLEN];
440 WCHAR szHwProfileName[MAX_PROFILE_LEN];
441 } HW_PROFILE_INFOW, *LPHW_PROFILE_INFOW;
443 typedef_tident(HW_PROFILE_INFO)
444 typedef_tident(LPHW_PROFILE_INFO)
445 typedef struct _tagDATETIME {
454 typedef struct _tagIMEPROA {
458 BYTE szDescription[50];
461 } IMEPROA,*PIMEPROA,*NPIMEPROA,FAR *LPIMEPROA;
462 typedef struct _tagIMEPROW {
466 WCHAR szDescription[50];
469 } IMEPROW,*PIMEPROW,*NPIMEPROW,FAR *LPIMEPROW;
470 typedef_tident(IMEPRO)
471 typedef_tident(NPIMEPRO)
472 typedef_tident(LPIMEPRO)
473 typedef_tident(PIMEPRO)
475 typedef struct _cpinfoexA {
477 BYTE DefaultChar[MAX_DEFAULTCHAR];
478 BYTE LeadByte[MAX_LEADBYTES];
479 WCHAR UnicodeDefaultChar;
481 CHAR CodePageName[MAX_PATH];
482 } CPINFOEXA, *LPCPINFOEXA;
483 typedef struct _cpinfoexW {
485 BYTE DefaultChar[MAX_DEFAULTCHAR];
486 BYTE LeadByte[MAX_LEADBYTES];
487 WCHAR UnicodeDefaultChar;
489 WCHAR CodePageName[MAX_PATH];
490 } CPINFOEXW, *LPCPINFOEXW;
492 typedef_tident(CPINFOEX)
493 typedef_tident(LPCPINFOEX)
495 typedef struct _RTL_RANGE_LIST {
500 } RTL_RANGE_LIST, *PRTL_RANGE_LIST;
502 typedef struct _RTL_RANGE {
509 } RTL_RANGE, *PRTL_RANGE;
513 (CALLBACK *PRTL_CONFLICT_RANGE_CALLBACK) (
518 typedef struct _RANGE_LIST_ITERATOR {
519 PLIST_ENTRY RangeListHead;
520 PLIST_ENTRY MergedHead;
523 } RTL_RANGE_LIST_ITERATOR, *PRTL_RANGE_LIST_ITERATOR;
525 typedef struct tagCBT_CREATEWNDA {
526 LPCREATESTRUCTA lpcs;
527 HWND hwndInsertAfter;
530 typedef struct tagCBT_CREATEWNDW {
531 LPCREATESTRUCTW lpcs;
532 HWND hwndInsertAfter;
535 typedef_tident(CBT_CREATEWND)
537 typedef struct tagCBTACTIVATESTRUCT {
542 typedef struct _CHAR_INFO {
548 } CHAR_INFO, *PCHAR_INFO;
550 typedef struct _charformatA {
556 COLORREF crTextColor;
558 BYTE bPitchAndFamily;
559 CHAR szFaceName[LF_FACESIZE];
562 typedef struct _charformatW {
568 COLORREF crTextColor;
570 BYTE bPitchAndFamily;
571 WCHAR szFaceName[LF_FACESIZE];
574 typedef_tident(CHARFORMAT)
576 typedef struct _charrange {
581 typedef struct tagCHARSET {
586 typedef struct tagFONTSIGNATURE {
589 } FONTSIGNATURE, *LPFONTSIGNATURE;
595 } CHARSETINFO, *LPCHARSETINFO;
597 typedef struct tagWCRANGE
601 } WCRANGE, *PWCRANGE,FAR *LPWCRANGE;
603 typedef struct tagGLYPHSET
607 DWORD cGlyphsSupported;
610 } GLYPHSET, *PGLYPHSET, FAR *LPGLYPHSET;
617 COLORREF* lpCustColors;
620 LPCCHOOKPROC lpfnHook;
621 LPCSTR lpTemplateName;
622 } CHOOSECOLORA, *LPCHOOSECOLORA;
629 COLORREF* lpCustColors;
632 LPCCHOOKPROC lpfnHook;
633 LPCWSTR lpTemplateName;
634 } CHOOSECOLORW, *LPCHOOSECOLORW;
636 typedef_tident(CHOOSECOLOR)
637 typedef_tident(LPCHOOSECOLOR)
639 typedef struct _OBJECT_TYPE_LIST {
643 } OBJECT_TYPE_LIST, *POBJECT_TYPE_LIST;
645 typedef struct tagLOGFONTA {
656 BYTE lfClipPrecision;
658 BYTE lfPitchAndFamily;
659 CHAR lfFaceName[LF_FACESIZE];
660 } LOGFONTA, *LPLOGFONTA, *PLOGFONTA;
662 typedef struct tagLOGFONTW {
673 BYTE lfClipPrecision;
675 BYTE lfPitchAndFamily;
676 WCHAR lfFaceName[LF_FACESIZE];
677 } LOGFONTW, *LPLOGFONTW, *PLOGFONTW;
679 typedef_tident(LOGFONT)
680 typedef_tident(LPLOGFONT)
681 typedef_tident(PLOGFONT)
683 typedef struct tagRAWINPUTHEADER {
688 } RAWINPUTHEADER, *PRAWINPUTHEADER, *LPRAWINPUTHEADER;
690 typedef struct tagRAWINPUTDEVICELIST {
693 } RAWINPUTDEVICELIST, *PRAWINPUTDEVICELIST;
695 typedef struct tagRAWINPUTDEVICE {
700 } RAWINPUTDEVICE, *PRAWINPUTDEVICE, *LPRAWINPUTDEVICE;
702 typedef CONST RAWINPUTDEVICE* PCRAWINPUTDEVICE;
704 typedef struct tagRAWMOUSE {
709 USHORT usButtonFlags;
716 ULONG ulExtraInformation;
717 } RAWMOUSE, *PRAWMOUSE, *LPRAWMOUSE;
719 typedef struct tagRAWKEYBOARD {
725 ULONG ExtraInformation;
726 } RAWKEYBOARD, *PRAWKEYBOARD, *LPRAWKEYBOARD;
728 typedef struct tagRAWHID {
732 } RAWHID, *PRAWHID, *LPRAWHID;
734 typedef struct tagRAWINPUT {
735 RAWINPUTHEADER header;
738 RAWKEYBOARD keyboard;
741 } RAWINPUT, *PRAWINPUT, *LPRAWINPUT;
743 typedef struct tagCHOOSEFONTA {
747 LPLOGFONTA lpLogFont;
752 LPCFHOOKPROC lpfnHook;
753 LPCSTR lpTemplateName;
757 WORD ___MISSING_ALIGNMENT__;
760 } CHOOSEFONTA, *LPCHOOSEFONTA;
762 typedef struct tagCHOOSEFONTW {
766 LPLOGFONTW lpLogFont;
771 LPCFHOOKPROC lpfnHook;
772 LPCWSTR lpTemplateName;
776 WORD ___MISSING_ALIGNMENT__;
779 } CHOOSEFONTW, *LPCHOOSEFONTW;
781 typedef_tident(CHOOSEFONT)
782 typedef_tident(LPCHOOSEFONT)
784 typedef struct _IDA {
789 typedef struct tagCLIENTCREATESTRUCT {
792 } CLIENTCREATESTRUCT;
794 typedef CLIENTCREATESTRUCT *LPCLIENTCREATESTRUCT;
796 typedef struct _CMInvokeCommandInfo {
806 } CMINVOKECOMMANDINFO, *LPCMINVOKECOMMANDINFO;
808 typedef struct tagCOLORADJUSTMENT {
811 WORD caIlluminantIndex;
815 WORD caReferenceBlack;
816 WORD caReferenceWhite;
819 SHORT caColorfulness;
820 SHORT caRedGreenTint;
821 } COLORADJUSTMENT, *LPCOLORADJUSTMENT;
823 typedef struct _COLORMAP {
826 } COLORMAP, * LPCOLORMAP;
828 typedef struct _DCB {
833 DWORD fOutxCtsFlow:1;
834 DWORD fOutxDsrFlow:1;
836 DWORD fDsrSensitivity:1;
837 DWORD fTXContinueOnXoff:1;
843 DWORD fAbortOnError:1;
859 typedef struct _COMM_CONFIG {
864 DWORD dwProviderSubType;
865 DWORD dwProviderOffset;
866 DWORD dwProviderSize;
867 WCHAR wcProviderData[1];
868 } COMMCONFIG, *LPCOMMCONFIG;
870 typedef struct _COMMPROP {
879 DWORD dwProvCapabilities;
880 DWORD dwSettableParams;
881 DWORD dwSettableBaud;
883 WORD wSettableStopParity;
884 DWORD dwCurrentTxQueue;
885 DWORD dwCurrentRxQueue;
889 } COMMPROP, *LPCOMMPROP;
891 typedef struct _COMMTIMEOUTS {
892 DWORD ReadIntervalTimeout;
893 DWORD ReadTotalTimeoutMultiplier;
894 DWORD ReadTotalTimeoutConstant;
895 DWORD WriteTotalTimeoutMultiplier;
896 DWORD WriteTotalTimeoutConstant;
897 } COMMTIMEOUTS,*LPCOMMTIMEOUTS;
899 typedef struct tagCOMPAREITEMSTRUCT {
908 } COMPAREITEMSTRUCT,*LPCOMPAREITEMSTRUCT;
913 COLORREF crBackground;
917 typedef struct _tagCOMPOSITIONFORM {
921 } COMPOSITIONFORM, *LPCOMPOSITIONFORM;
923 typedef struct _COMSTAT {
931 DWORD fReserved : 25;
934 } COMSTAT, *LPCOMSTAT;
936 typedef struct tagCONVCONTEXT {
943 SECURITY_QUALITY_OF_SERVICE qos;
946 typedef CONVCONTEXT *PCONVCONTEXT;
948 typedef struct tagCONVINFO {
962 CONVCONTEXT ConvCtxt;
965 } CONVINFO, *PCONVINFO;
967 typedef struct tagCOPYDATASTRUCT {
973 typedef struct tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA {
976 ULONG ulSectionLength;
977 PVOID lpSectionGlobalDataBase;
978 ULONG ulSectionGlobalDataLength;
979 } ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA, *PACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
980 typedef const ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA *PCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
982 typedef struct tagACTCTX_SECTION_KEYED_DATA {
984 ULONG ulDataFormatVersion;
987 PVOID lpSectionGlobalData;
988 ULONG ulSectionGlobalDataLength;
990 ULONG ulSectionTotalLength;
992 ULONG ulAssemblyRosterIndex;
995 ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA AssemblyMetadata;
996 } ACTCTX_SECTION_KEYED_DATA, *PACTCTX_SECTION_KEYED_DATA;
997 typedef const ACTCTX_SECTION_KEYED_DATA * PCACTCTX_SECTION_KEYED_DATA;
999 typedef struct tagRTL_BITMAP_RUN {
1002 } RTL_BITMAP_RUN, *PRTL_BITMAP_RUN;
1004 typedef const RTL_BITMAP *PCRTL_BITMAP;
1006 typedef struct _cpinfo {
1008 BYTE DefaultChar[MAX_DEFAULTCHAR];
1009 BYTE LeadByte[MAX_LEADBYTES];
1010 } CPINFO, *LPCPINFO;
1012 typedef struct tagCPLINFO {
1019 typedef struct _CREATE_PROCESS_DEBUG_INFO {
1023 LPVOID lpBaseOfImage;
1024 DWORD dwDebugInfoFileOffset;
1025 DWORD nDebugInfoSize;
1026 LPVOID lpThreadLocalBase;
1027 LPTHREAD_START_ROUTINE lpStartAddress;
1030 } CREATE_PROCESS_DEBUG_INFO;
1032 typedef struct _CREATE_THREAD_DEBUG_INFO {
1034 LPVOID lpThreadLocalBase;
1035 LPTHREAD_START_ROUTINE lpStartAddress;
1036 } CREATE_THREAD_DEBUG_INFO;
1040 typedef struct _SOCKET_ADDRESS {
1041 LPSOCKADDR lpSockaddr ;
1042 INT iSockaddrLength ;
1043 } SOCKET_ADDRESS, *PSOCKET_ADDRESS, *LPSOCKET_ADDRESS;
1047 typedef struct _CSADDR_INFO {
1048 SOCKET_ADDRESS LocalAddr;
1049 SOCKET_ADDRESS RemoteAddr;
1060 } BSMINFO, *PBSMINFO;
1062 typedef struct _currencyfmtA {
1067 LPSTR lpThousandSep;
1070 LPSTR lpCurrencySymbol;
1073 typedef struct _currencyfmtW {
1077 LPWSTR lpDecimalSep;
1078 LPWSTR lpThousandSep;
1081 LPWSTR lpCurrencySymbol;
1084 typedef_tident(CURRENCYFMT)
1086 typedef struct _SERVICE_DESCRIPTIONA {
1087 LPSTR lpDescription;
1088 } SERVICE_DESCRIPTIONA, *LPSERVICE_DESCRIPTIONA;
1089 typedef struct _SERVICE_DESCRIPTIONW {
1090 LPWSTR lpDescription;
1091 } SERVICE_DESCRIPTIONW, *LPSERVICE_DESCRIPTIONW;
1092 typedef_tident(SERVICE_DESCRIPTION)
1093 typedef_tident(LPSERVICE_DESCRIPTION)
1095 typedef enum _SC_ACTION_TYPE {
1097 SC_ACTION_RESTART = 1,
1098 SC_ACTION_REBOOT = 2,
1099 SC_ACTION_RUN_COMMAND = 3
1102 typedef struct _SC_ACTION {
1103 SC_ACTION_TYPE Type;
1105 } SC_ACTION, *LPSC_ACTION;
1107 typedef struct _SERVICE_FAILURE_ACTIONSA {
1108 DWORD dwResetPeriod;
1112 SC_ACTION * lpsaActions;
1113 } SERVICE_FAILURE_ACTIONSA, *LPSERVICE_FAILURE_ACTIONSA;
1115 typedef struct _SERVICE_FAILURE_ACTIONSW {
1116 DWORD dwResetPeriod;
1120 SC_ACTION * lpsaActions;
1121 } SERVICE_FAILURE_ACTIONSW, *LPSERVICE_FAILURE_ACTIONSW;
1123 typedef_tident(SERVICE_FAILURE_ACTIONS)
1124 typedef_tident(LPSERVICE_FAILURE_ACTIONS)
1126 typedef struct tagACTCTXA {
1130 USHORT wProcessorArchitecture;
1132 LPCSTR lpAssemblyDirectory;
1133 LPCSTR lpResourceName;
1134 LPCSTR lpApplicationName;
1136 } ACTCTXA, *PACTCTXA;
1138 typedef struct tagACTCTXW {
1142 USHORT wProcessorArchitecture;
1144 LPCWSTR lpAssemblyDirectory;
1145 LPCWSTR lpResourceName;
1146 LPCWSTR lpApplicationName;
1148 } ACTCTXW, *PACTCTXW;
1150 typedef struct _JOB_SET_ARRAY {
1154 } JOB_SET_ARRAY, *PJOB_SET_ARRAY;
1156 typedef struct _MEMORYSTATUSEX {
1159 DWORDLONG ullTotalPhys;
1160 DWORDLONG ullAvailPhys;
1161 DWORDLONG ullTotalPageFile;
1162 DWORDLONG ullAvailPageFile;
1163 DWORDLONG ullTotalVirtual;
1164 DWORDLONG ullAvailVirtual;
1165 DWORDLONG ullAvailExtendedVirtual;
1166 } MEMORYSTATUSEX, *LPMEMORYSTATUSEX;
1168 typedef const ACTCTXA *PCACTCTXA;
1169 typedef const ACTCTXW *PCACTCTXW;
1170 typedef_tident(ACTCTX)
1171 typedef_tident(PACTCTX)
1173 typedef struct _TRIVERTEX
1181 }TRIVERTEX,*PTRIVERTEX,*LPTRIVERTEX;
1183 typedef struct tagCURSORSHAPE {
1191 } CURSORSHAPE, *LPCURSORSHAPE;
1193 typedef struct tagCWPRETSTRUCT {
1201 typedef struct tagCWPSTRUCT {
1208 typedef struct _DATATYPES_INFO_1A {
1210 } DATATYPES_INFO_1A;
1212 typedef struct _DATATYPES_INFO_1W {
1214 } DATATYPES_INFO_1W;
1216 typedef_tident(DATATYPES_INFO_1)
1219 unsigned short bAppReturnCode:8,
1226 unsigned short reserved:14,
1233 unsigned short unused:12,
1243 unsigned short unused:13,
1250 typedef struct tagDDEML_MSG_HOOK_DATA {
1255 } DDEML_MSG_HOOK_DATA;
1258 unsigned short unused:13,
1266 unsigned short unused:12,
1275 typedef struct _EXCEPTION_DEBUG_INFO {
1276 EXCEPTION_RECORD ExceptionRecord;
1277 DWORD dwFirstChance;
1278 } EXCEPTION_DEBUG_INFO;
1280 typedef struct _EXIT_PROCESS_DEBUG_INFO {
1282 } EXIT_PROCESS_DEBUG_INFO;
1284 typedef struct _EXIT_THREAD_DEBUG_INFO {
1286 } EXIT_THREAD_DEBUG_INFO;
1288 typedef struct _LOAD_DLL_DEBUG_INFO {
1291 DWORD dwDebugInfoFileOffset;
1292 DWORD nDebugInfoSize;
1295 } LOAD_DLL_DEBUG_INFO;
1297 typedef struct _UNLOAD_DLL_DEBUG_INFO {
1299 } UNLOAD_DLL_DEBUG_INFO;
1301 typedef struct _OUTPUT_DEBUG_STRING_INFO {
1302 LPSTR lpDebugStringData;
1304 WORD nDebugStringLength;
1305 } OUTPUT_DEBUG_STRING_INFO;
1307 typedef struct _RIP_INFO {
1312 typedef struct _DEBUG_EVENT {
1313 DWORD dwDebugEventCode;
1317 EXCEPTION_DEBUG_INFO Exception;
1318 CREATE_THREAD_DEBUG_INFO CreateThread;
1319 CREATE_PROCESS_DEBUG_INFO CreateProcessInfo;
1320 EXIT_THREAD_DEBUG_INFO ExitThread;
1321 EXIT_PROCESS_DEBUG_INFO ExitProcess;
1322 LOAD_DLL_DEBUG_INFO LoadDll;
1323 UNLOAD_DLL_DEBUG_INFO UnloadDll;
1324 OUTPUT_DEBUG_STRING_INFO DebugString;
1327 } DEBUG_EVENT, *LPDEBUG_EVENT;
1329 typedef struct tagDEBUGHOOKINFO {
1331 DWORD idThreadInstaller;
1337 typedef struct tagDELETEITEMSTRUCT {
1345 typedef struct _DEV_BROADCAST_HDR {
1347 ULONG dbch_devicetype;
1348 ULONG dbch_reserved;
1349 } DEV_BROADCAST_HDR;
1350 typedef DEV_BROADCAST_HDR *PDEV_BROADCAST_HDR;
1352 typedef struct _DEV_BROADCAST_OEM {
1354 ULONG dbco_devicetype;
1355 ULONG dbco_reserved;
1356 ULONG dbco_identifier;
1357 ULONG dbco_suppfunc;
1358 } DEV_BROADCAST_OEM;
1359 typedef DEV_BROADCAST_OEM *PDEV_BROADCAST_OEM;
1361 typedef struct _DEV_BROADCAST_PORT {
1363 ULONG dbcp_devicetype;
1364 ULONG dbcp_reserved;
1366 } DEV_BROADCAST_PORT;
1367 typedef DEV_BROADCAST_PORT *PDEV_BROADCAST_PORT;
1369 struct _DEV_BROADCAST_USERDEFINED {
1370 struct _DEV_BROADCAST_HDR dbud_dbh;
1371 char dbud_szName[1];
1372 BYTE dbud_rgbUserDefined[1];
1375 typedef struct _DEV_BROADCAST_VOLUME {
1377 ULONG dbcv_devicetype;
1378 ULONG dbcv_reserved;
1379 ULONG dbcv_unitmask;
1381 } DEV_BROADCAST_VOLUME;
1382 typedef DEV_BROADCAST_VOLUME *PDEV_BROADCAST_VOLUME;
1384 typedef struct tagDEVNAMES {
1389 } DEVNAMES, *LPDEVNAMES;
1391 typedef struct tagDIBSECTION {
1393 BITMAPINFOHEADER dsBmih;
1394 DWORD dsBitfields[3];
1399 typedef struct _DISK_PERFORMANCE {
1400 LARGE_INTEGER BytesRead;
1401 LARGE_INTEGER BytesWritten;
1402 LARGE_INTEGER ReadTime;
1403 LARGE_INTEGER WriteTime;
1407 } DISK_PERFORMANCE ;
1411 DWORD dwExtendedStyle;
1417 } PACKED DLGITEMTEMPLATE;
1419 typedef DLGITEMTEMPLATE *LPDLGITEMTEMPLATE;
1420 typedef DLGITEMTEMPLATE *PDLGITEMTEMPLATE;
1424 DWORD dwExtendedStyle;
1430 } PACKED DLGTEMPLATE;
1432 typedef DLGTEMPLATE *LPDLGTEMPLATE;
1433 typedef const DLGTEMPLATE *LPCDLGTEMPLATE;
1435 typedef struct _DOC_INFO_1A {
1441 typedef struct _DOC_INFO_1W {
1447 typedef_tident(DOC_INFO_1)
1449 typedef struct _DOC_INFO_2A {
1457 typedef struct _DOC_INFO_2W {
1465 typedef_tident(DOC_INFO_2)
1471 LPCSTR lpszDatatype;
1473 } DOCINFOA, *PDOCINFOA;
1477 LPCWSTR lpszDocName;
1479 LPCWSTR lpszDatatype;
1481 } DOCINFOW, *PDOCINFOW;
1483 typedef_tident(DOCINFO)
1484 typedef_tident(PDOCINFO)
1490 } DRAGLISTINFO, *LPDRAGLISTINFO;
1492 typedef struct tagDRAWITEMSTRUCT {
1502 } DRAWITEMSTRUCT, *LPDRAWITEMSTRUCT, *PDRAWITEMSTRUCT;
1510 } DRAWTEXTPARAMS, *LPDRAWTEXTPARAMS;
1514 typedef struct _EXTTEXTMETRIC
1518 short emOrientation;
1519 short emMasterHeight;
1522 short emMasterUnits;
1525 short emLowerCaseAscent;
1526 short emLowerCaseDescent;
1528 short emSuperScript;
1530 short emSuperScriptSize;
1531 short emSubScriptSize;
1532 short emUnderlineOffset;
1533 short emUnderlineWidth;
1534 short emDoubleUpperUnderlineOffset;
1535 short emDoubleLowerUnderlineOffset;
1536 short emDoubleUpperUnderlineWidth;
1537 short emDoubleLowerUnderlineWidth;
1538 short emStrikeOutOffset;
1539 short emStrikeOutWidth;
1542 } EXTTEXTMETRIC, *PEXTTEXTMETRIC;
1544 typedef struct _DRIVER_INFO_1A {
1548 typedef struct _DRIVER_INFO_1W {
1552 typedef_tident(DRIVER_INFO_1)
1554 typedef struct _DRIVER_INFO_2A {
1563 typedef struct _DRIVER_INFO_2W {
1566 LPWSTR pEnvironment;
1572 typedef_tident(DRIVER_INFO_2)
1574 typedef struct _DRIVER_INFO_3A {
1582 LPSTR pDependentFiles;
1584 LPSTR pDefaultDataType;
1587 typedef struct _DRIVER_INFO_3W {
1590 LPWSTR pEnvironment;
1595 LPWSTR pDependentFiles;
1596 LPWSTR pMonitorName;
1597 LPWSTR pDefaultDataType;
1600 typedef_tident(DRIVER_INFO_3)
1602 typedef struct _editstream {
1605 EDITSTREAMCALLBACK pfnCallback;
1608 typedef struct tagEMR
1614 typedef struct tagEMRANGLEARC
1621 } EMRANGLEARC, *PEMRANGLEARC;
1623 typedef struct tagEMRARC
1630 EMRARCTO, *PEMRARCTO,
1631 EMRCHORD, *PEMRCHORD,
1634 typedef struct _XFORM
1642 } XFORM, *PXFORM, *LPXFORM;
1644 typedef struct tagEMRBITBLT
1656 COLORREF crBkColorSrc;
1661 } EMRBITBLT, *PEMRBITBLT;
1663 typedef struct tagLOGBRUSH {
1667 } LOGBRUSH, *PLOGBRUSH;
1669 typedef struct tagEMRCREATEBRUSHINDIRECT
1674 } EMRCREATEBRUSHINDIRECT, *PEMRCREATEBRUSHINDIRECT;
1676 typedef LONG LCSCSTYPE;
1677 typedef LONG LCSGAMUTMATCH;
1679 typedef struct tagLOGCOLORSPACEA {
1684 LCSCSTYPE lcsCSType;
1685 LCSGAMUTMATCH lcsIntent;
1686 CIEXYZTRIPLE lcsEndpoints;
1688 DWORD lcsGammaGreen;
1690 CHAR lcsFilename[MAX_PATH];
1691 } LOGCOLORSPACEA, *LPLOGCOLORSPACEA;
1693 typedef struct tagLOGCOLORSPACEW {
1698 LCSCSTYPE lcsCSType;
1699 LCSGAMUTMATCH lcsIntent;
1700 CIEXYZTRIPLE lcsEndpoints;
1702 DWORD lcsGammaGreen;
1704 WCHAR lcsFilename[MAX_PATH];
1705 } LOGCOLORSPACEW, *LPLOGCOLORSPACEW;
1707 typedef_tident(LOGCOLORSPACE)
1709 typedef struct tagEMRCREATECOLORSPACEA
1714 } EMRCREATECOLORSPACEA, *PEMRCREATECOLORSPACEA;
1716 typedef struct tagEMRCREATECOLORSPACEW
1721 } EMRCREATECOLORSPACEW, *PEMRCREATECOLORSPACEW;
1723 typedef_tident(EMRCREATECOLORSPACE)
1724 typedef_tident(PEMRCREATECOLORSPACE)
1726 typedef struct tagEMRCREATEDIBPATTERNBRUSHPT
1735 } EMRCREATEDIBPATTERNBRUSHPT,
1736 PEMRCREATEDIBPATTERNBRUSHPT;
1738 typedef struct tagEMRCREATEMONOBRUSH
1747 } EMRCREATEMONOBRUSH, *PEMRCREATEMONOBRUSH;
1749 typedef struct tagPALETTEENTRY {
1754 } PALETTEENTRY, *LPPALETTEENTRY, *PPALETTEENTRY;
1756 typedef struct tagLOGPALETTE {
1759 PALETTEENTRY palPalEntry[1];
1760 } LOGPALETTE, *LPLOGPALETTE, *PLOGPALETTE;
1762 typedef struct tagEMRCREATEPALETTE
1767 } EMRCREATEPALETTE, *PEMRCREATEPALETTE;
1769 typedef struct tagLOGPEN {
1775 typedef struct tagEMRCREATEPEN
1780 } EMRCREATEPEN, *PEMRCREATEPEN;
1782 typedef struct tagEMRELLIPSE
1786 } EMRELLIPSE, *PEMRELLIPSE,
1787 EMRRECTANGLE, *PEMRRECTANGLE;
1789 typedef struct tagEMREOF
1793 DWORD offPalEntries;
1797 typedef struct tagEMREXCLUDECLIPRECT
1801 } EMREXCLUDECLIPRECT, *PEMREXCLUDECLIPRECT,
1802 EMRINTERSECTCLIPRECT, *PEMRINTERSECTCLIPRECT;
1804 typedef struct tagPANOSE {
1810 BYTE bStrokeVariation;
1817 typedef struct tagEXTLOGFONTA {
1818 LOGFONTA elfLogFont;
1819 CHAR elfFullName[LF_FULLFACESIZE];
1820 CHAR elfStyle[LF_FACESIZE];
1825 BYTE elfVendorId[ELF_VENDOR_SIZE];
1828 } EXTLOGFONTA, *LPEXTLOGFONTA;
1830 typedef struct tagEXTLOGFONTW {
1831 LOGFONTW elfLogFont;
1832 WCHAR elfFullName[LF_FULLFACESIZE];
1833 WCHAR elfStyle[LF_FACESIZE];
1838 BYTE elfVendorId[ELF_VENDOR_SIZE];
1841 } EXTLOGFONTW, *LPEXTLOGFONTW;
1843 typedef_tident(EXTLOGFONT)
1844 typedef_tident(LPEXTLOGFONT)
1846 typedef struct tagEMREXTCREATEFONTINDIRECTW
1851 } EMREXTCREATEFONTINDIRECTW,
1852 PEMREXTCREATEFONTINDIRECTW;
1854 typedef struct tagEXTLOGPEN {
1860 DWORD elpNumEntries;
1861 DWORD elpStyleEntry[1];
1864 typedef struct tagEMREXTCREATEPEN
1873 } EMREXTCREATEPEN, *PEMREXTCREATEPEN;
1875 typedef struct tagEMREXTFLOODFILL
1881 } EMREXTFLOODFILL, *PEMREXTFLOODFILL;
1883 typedef struct tagEMREXTSELECTCLIPRGN
1889 } EMREXTSELECTCLIPRGN, *PEMREXTSELECTCLIPRGN;
1891 typedef struct tagEMRTEXT
1893 POINTL ptlReference;
1899 } EMRTEXT, *PEMRTEXT;
1901 typedef struct tagEMREXTTEXTOUTA
1905 DWORD iGraphicsMode;
1909 } EMREXTTEXTOUTA, *PEMREXTTEXTOUTA,
1910 EMREXTTEXTOUTW, *PEMREXTTEXTOUTW;
1912 typedef struct tagEMRFILLPATH
1916 } EMRFILLPATH, *PEMRFILLPATH,
1917 EMRSTROKEANDFILLPATH, *PEMRSTROKEANDFILLPATH,
1918 EMRSTROKEPATH, *PEMRSTROKEPATH;
1920 typedef struct tagEMRFILLRGN
1927 } EMRFILLRGN, *PEMRFILLRGN;
1929 typedef struct tagEMRFORMAT {
1936 typedef struct tagSIZE {
1939 } SIZE, *PSIZE, *LPSIZE, SIZEL, *PSIZEL, *LPSIZEL;
1941 typedef struct tagEMRFRAMERGN
1949 } EMRFRAMERGN, *PEMRFRAMERGN;
1951 typedef struct tagEMRGDICOMMENT
1956 } EMRGDICOMMENT, *PEMRGDICOMMENT;
1958 typedef struct tagEMRINVERTRGN
1964 } EMRINVERTRGN, *PEMRINVERTRGN,
1965 EMRPAINTRGN, *PEMRPAINTRGN;
1967 typedef struct tagEMRLINETO
1971 } EMRLINETO, *PEMRLINETO,
1972 EMRMOVETOEX, *PEMRMOVETOEX;
1974 typedef struct tagEMRMASKBLT
1986 COLORREF crBkColorSrc;
1999 } EMRMASKBLT, *PEMRMASKBLT;
2001 typedef struct tagEMRMODIFYWORLDTRANSFORM
2006 } EMRMODIFYWORLDTRANSFORM,
2007 PEMRMODIFYWORLDTRANSFORM;
2009 typedef struct tagEMROFFSETCLIPRGN
2013 } EMROFFSETCLIPRGN, *PEMROFFSETCLIPRGN;
2015 typedef struct tagEMRPLGBLT
2025 COLORREF crBkColorSrc;
2038 } EMRPLGBLT, *PEMRPLGBLT;
2040 typedef struct tagEMRPOLYDRAW
2047 } EMRPOLYDRAW, *PEMRPOLYDRAW;
2049 typedef struct tagEMRPOLYDRAW16
2056 } EMRPOLYDRAW16, *PEMRPOLYDRAW16;
2058 typedef struct tagEMRPOLYLINE
2064 } EMRPOLYLINE, *PEMRPOLYLINE,
2065 EMRPOLYBEZIER, *PEMRPOLYBEZIER,
2066 EMRPOLYGON, *PEMRPOLYGON,
2067 EMRPOLYBEZIERTO, *PEMRPOLYBEZIERTO,
2068 EMRPOLYLINETO, *PEMRPOLYLINETO;
2070 typedef struct tagEMRPOLYLINE16
2076 } EMRPOLYLINE16, *PEMRPOLYLINE16,
2077 EMRPOLYBEZIER16, *PEMRPOLYBEZIER16,
2078 EMRPOLYGON16, *PEMRPOLYGON16,
2079 EMRPOLYBEZIERTO16, *PEMRPOLYBEZIERTO16,
2080 EMRPOLYLINETO16, *PEMRPOLYLINETO16;
2082 typedef struct tagEMRPOLYPOLYLINE
2088 DWORD aPolyCounts[1];
2090 } EMRPOLYPOLYLINE, *PEMRPOLYPOLYLINE,
2091 EMRPOLYPOLYGON, *PEMRPOLYPOLYGON;
2093 typedef struct tagEMRPOLYPOLYLINE16
2099 DWORD aPolyCounts[1];
2101 } EMRPOLYPOLYLINE16, *PEMRPOLYPOLYLINE16,
2102 EMRPOLYPOLYGON16, *PEMRPOLYPOLYGON16;
2104 typedef struct tagEMRPOLYTEXTOUTA
2108 DWORD iGraphicsMode;
2112 EMRTEXT aemrtext[1];
2113 } EMRPOLYTEXTOUTA, *PEMRPOLYTEXTOUTA,
2114 EMRPOLYTEXTOUTW, *PEMRPOLYTEXTOUTW;
2116 typedef struct tagEMRRESIZEPALETTE
2121 } EMRRESIZEPALETTE, *PEMRRESIZEPALETTE;
2123 typedef struct tagEMRRESTOREDC
2127 } EMRRESTOREDC, *PEMRRESTOREDC;
2129 typedef struct tagEMRROUNDRECT
2134 } EMRROUNDRECT, *PEMRROUNDRECT;
2136 typedef struct tagEMRSCALEVIEWPORTEXTEX
2143 } EMRSCALEVIEWPORTEXTEX, *PEMRSCALEVIEWPORTEXTEX,
2144 EMRSCALEWINDOWEXTEX, *PEMRSCALEWINDOWEXTEX;
2146 typedef struct tagEMRSELECTCOLORSPACE
2150 } EMRSELECTCOLORSPACE, *PEMRSELECTCOLORSPACE,
2151 EMRDELETECOLORSPACE, *PEMRDELETECOLORSPACE;
2152 typedef struct tagEMRSELECTOBJECT
2156 } EMRSELECTOBJECT, *PEMRSELECTOBJECT,
2157 EMRDELETEOBJECT, *PEMRDELETEOBJECT;
2159 typedef struct tagEMRSELECTPALETTE
2163 } EMRSELECTPALETTE, *PEMRSELECTPALETTE;
2165 typedef struct tagEMRSETARCDIRECTION
2168 DWORD iArcDirection;
2169 } EMRSETARCDIRECTION, *PEMRSETARCDIRECTION;
2171 typedef struct tagEMRSETTEXTCOLOR
2175 } EMRSETBKCOLOR, *PEMRSETBKCOLOR,
2176 EMRSETTEXTCOLOR, *PEMRSETTEXTCOLOR;
2178 typedef struct tagEMRSETCOLORADJUSTMENT
2181 COLORADJUSTMENT ColorAdjustment;
2182 } EMRSETCOLORADJUSTMENT, *PEMRSETCOLORADJUSTMENT;
2184 typedef struct tagEMRSETDIBITSTODEVICE
2201 } EMRSETDIBITSTODEVICE, *PEMRSETDIBITSTODEVICE;
2203 typedef struct tagEMRSETMAPPERFLAGS
2207 } EMRSETMAPPERFLAGS, *PEMRSETMAPPERFLAGS;
2209 typedef struct tagEMRSETMITERLIMIT
2213 } EMRSETMITERLIMIT, *PEMRSETMITERLIMIT;
2215 typedef struct tagEMRSETPALETTEENTRIES
2221 PALETTEENTRY aPalEntries[1];
2222 } EMRSETPALETTEENTRIES, *PEMRSETPALETTEENTRIES;
2224 typedef struct tagEMRSETPIXELV
2229 } EMRSETPIXELV, *PEMRSETPIXELV;
2231 typedef struct tagEMRSETVIEWPORTEXTEX
2235 } EMRSETVIEWPORTEXTEX, *PEMRSETVIEWPORTEXTEX,
2236 EMRSETWINDOWEXTEX, *PEMRSETWINDOWEXTEX;
2238 typedef struct tagEMRSETVIEWPORTORGEX
2242 } EMRSETVIEWPORTORGEX, *PEMRSETVIEWPORTORGEX,
2243 EMRSETWINDOWORGEX, *PEMRSETWINDOWORGEX,
2244 EMRSETBRUSHORGEX, *PEMRSETBRUSHORGEX;
2246 typedef struct tagEMRSETWORLDTRANSFORM
2250 } EMRSETWORLDTRANSFORM, *PEMRSETWORLDTRANSFORM;
2252 typedef struct tagEMRSTRETCHBLT
2264 COLORREF crBkColorSrc;
2272 } EMRSTRETCHBLT, *PEMRSTRETCHBLT;
2274 typedef struct tagEMRSTRETCHDIBITS
2292 } EMRSTRETCHDIBITS, *PEMRSTRETCHDIBITS;
2294 typedef struct tagABORTPATH
2297 } EMRABORTPATH, *PEMRABORTPATH,
2298 EMRBEGINPATH, *PEMRBEGINPATH,
2299 EMRENDPATH, *PEMRENDPATH,
2300 EMRCLOSEFIGURE, *PEMRCLOSEFIGURE,
2301 EMRFLATTENPATH, *PEMRFLATTENPATH,
2302 EMRWIDENPATH, *PEMRWIDENPATH,
2303 EMRSETMETARGN, *PEMRSETMETARGN,
2304 EMRSAVEDC, *PEMRSAVEDC,
2305 EMRREALIZEPALETTE, *PEMRREALIZEPALETTE;
2307 typedef struct tagEMRSELECTCLIPPATH
2311 } EMRSELECTCLIPPATH, *PEMRSELECTCLIPPATH,
2312 EMRSETBKMODE, *PEMRSETBKMODE,
2313 EMRSETMAPMODE, *PEMRSETMAPMODE,
2314 EMRSETPOLYFILLMODE, *PEMRSETPOLYFILLMODE,
2315 EMRSETROP2, *PEMRSETROP2,
2316 EMRSETSTRETCHBLTMODE, *PEMRSETSTRETCHBLTMODE,
2317 EMRSETTEXTALIGN, *PEMRSETTEXTALIGN,
2318 EMRENABLEICM, *PEMRENABLEICM;
2320 typedef struct tagNMHDR {
2326 typedef struct _encorrecttext {
2332 typedef struct _endropfiles {
2352 typedef struct tagENHMETAHEADER {
2364 DWORD offDescription;
2367 SIZEL szlMillimeters;
2368 DWORD cbPixelFormat;
2369 DWORD offPixelFormat;
2371 SIZEL szlMicrometers;
2372 } ENHMETAHEADER, *LPENHMETAHEADER;
2374 typedef struct tagENHMETARECORD {
2378 } ENHMETARECORD, *PENHMETARECORD, *LPENHMETARECORD;
2380 typedef struct _enprotected {
2388 typedef struct _SERVICE_STATUS {
2389 DWORD dwServiceType;
2390 DWORD dwCurrentState;
2391 DWORD dwControlsAccepted;
2392 DWORD dwWin32ExitCode;
2393 DWORD dwServiceSpecificExitCode;
2396 } SERVICE_STATUS, *LPSERVICE_STATUS;
2398 typedef struct _SERVICE_STATUS_PROCESS {
2399 DWORD dwServiceType;
2400 DWORD dwCurrentState;
2401 DWORD dwControlsAccepted;
2402 DWORD dwWin32ExitCode;
2403 DWORD dwServiceSpecificExitCode;
2407 DWORD dwServiceFlags;
2408 } SERVICE_STATUS_PROCESS, *LPSERVICE_STATUS_PROCESS;
2410 typedef struct _ENUM_SERVICE_STATUSA {
2411 LPSTR lpServiceName;
2412 LPSTR lpDisplayName;
2413 SERVICE_STATUS ServiceStatus;
2414 } ENUM_SERVICE_STATUSA, *LPENUM_SERVICE_STATUSA;
2416 typedef struct _ENUM_SERVICE_STATUSW {
2417 LPWSTR lpServiceName;
2418 LPWSTR lpDisplayName;
2419 SERVICE_STATUS ServiceStatus;
2420 } ENUM_SERVICE_STATUSW, *LPENUM_SERVICE_STATUSW;
2422 typedef_tident(ENUM_SERVICE_STATUS)
2423 typedef_tident(LPENUM_SERVICE_STATUS)
2425 typedef struct _ENUM_SERVICE_STATUS_PROCESSA {
2426 LPSTR lpServiceName;
2427 LPSTR lpDisplayName;
2428 SERVICE_STATUS_PROCESS ServiceStatusProcess;
2429 } ENUM_SERVICE_STATUS_PROCESSA, *LPENUM_SERVICE_STATUS_PROCESSA;
2431 typedef struct _ENUM_SERVICE_STATUS_PROCESSW {
2432 LPWSTR lpServiceName;
2433 LPWSTR lpDisplayName;
2434 SERVICE_STATUS_PROCESS ServiceStatusProcess;
2435 } ENUM_SERVICE_STATUS_PROCESSW, *LPENUM_SERVICE_STATUS_PROCESSW;
2437 typedef_tident(ENUM_SERVICE_STATUS_PROCESS)
2438 typedef_tident(LPENUM_SERVICE_STATUS_PROCESS)
2440 typedef struct tagENUMLOGFONTA {
2441 LOGFONTA elfLogFont;
2442 CHAR elfFullName[LF_FULLFACESIZE];
2443 CHAR elfStyle[LF_FACESIZE];
2444 } ENUMLOGFONTA, *LPENUMLOGFONTA;
2446 typedef struct tagENUMLOGFONTW {
2447 LOGFONTW elfLogFont;
2448 WCHAR elfFullName[LF_FULLFACESIZE];
2449 WCHAR elfStyle[LF_FACESIZE];
2450 } ENUMLOGFONTW, *LPENUMLOGFONTW;
2452 typedef_tident(ENUMLOGFONT)
2453 typedef_tident(LPENUMLOGFONT)
2455 typedef struct tagENUMLOGFONTEXA {
2456 LOGFONTA elfLogFont;
2457 CHAR elfFullName[LF_FULLFACESIZE];
2458 CHAR elfStyle[LF_FACESIZE];
2459 CHAR elfScript[LF_FACESIZE];
2460 } ENUMLOGFONTEXA, *LPENUMLOGFONTEXA;
2462 typedef struct tagENUMLOGFONTEXW {
2463 LOGFONTW elfLogFont;
2464 WCHAR elfFullName[LF_FULLFACESIZE];
2465 WCHAR elfStyle[LF_FACESIZE];
2466 WCHAR elfScript[LF_FACESIZE];
2467 } ENUMLOGFONTEXW, *LPENUMLOGFONTEXW;
2469 typedef_tident(ENUMLOGFONTEX)
2470 typedef_tident(LPENUMLOGFONTEX)
2472 typedef struct tagDESIGNVECTOR
2476 LONG dvValues[MM_MAX_NUMAXES];
2477 } DESIGNVECTOR, *PDESIGNVECTOR, FAR *LPDESIGNVECTOR;
2479 typedef struct tagENUMLOGFONTEXDVA
2481 ENUMLOGFONTEXA elfEnumLogfontEx;
2482 DESIGNVECTOR elfDesignVector;
2483 } ENUMLOGFONTEXDVA, *PENUMLOGFONTEXDVA, FAR *LPENUMLOGFONTEXDVA;
2484 typedef struct tagENUMLOGFONTEXDVW
2486 ENUMLOGFONTEXW elfEnumLogfontEx;
2487 DESIGNVECTOR elfDesignVector;
2488 } ENUMLOGFONTEXDVW, *PENUMLOGFONTEXDVW, FAR *LPENUMLOGFONTEXDVW;
2490 typedef_tident(ENUMLOGFONTEXDV)
2491 typedef_tident(PENUMLOGFONTEXDV)
2492 typedef_tident(LPENUMLOGFONTEXDV)
2494 typedef struct _EVENTLOGRECORD {
2498 DWORD TimeGenerated;
2505 DWORD ClosingRecordNumber;
2507 DWORD UserSidLength;
2508 DWORD UserSidOffset;
2516 TCHAR Computername[]
2526 typedef struct tagEVENTMSG {
2534 typedef struct _EXT_BUTTON {
2538 } EXT_BUTTON, *LPEXT_BUTTON;
2540 typedef struct tagFILTERKEYS {
2549 typedef struct _FIND_NAME_BUFFER {
2551 UCHAR access_control;
2552 UCHAR frame_control;
2553 UCHAR destination_addr[6];
2554 UCHAR source_addr[6];
2555 UCHAR routing_info[18];
2558 typedef struct _FIND_NAME_HEADER {
2565 enum _FINDEX_INFO_LEVELS
2568 FindExInfoMaxInfoLevel
2569 } FINDEX_INFO_LEVELS;
2572 enum _FINDEX_SEARCH_OPS
2574 FindExSearchNameMatch,
2575 FindExSearchLimitToDirectories,
2576 FindExSearchLimitToDevices,
2577 FindExSearchMaxSearchOp
2579 } FINDEX_SEARCH_OPS;
2581 #define FIND_FIRST_EX_CASE_SENSITIVE 0x00000001
2586 HINSTANCE hInstance;
2588 LPSTR lpstrFindWhat;
2589 LPSTR lpstrReplaceWith;
2591 WORD wReplaceWithLen;
2593 LPFRHOOKPROC lpfnHook;
2594 LPCSTR lpTemplateName;
2595 } FINDREPLACEA, *LPFINDREPLACEA;
2600 HINSTANCE hInstance;
2602 LPWSTR lpstrFindWhat;
2603 LPWSTR lpstrReplaceWith;
2605 WORD wReplaceWithLen;
2607 LPFRHOOKPROC lpfnHook;
2608 LPCWSTR lpTemplateName;
2609 } FINDREPLACEW, *LPFINDREPLACEW;
2611 typedef_tident(FINDREPLACE)
2612 typedef_tident(LPFINDREPLACE)
2614 typedef struct _findtext {
2619 typedef struct _findtextex {
2625 typedef struct _FMS_GETDRIVEINFOA {
2631 } FMS_GETDRIVEINFOA;
2633 typedef struct _FMS_GETDRIVEINFOW {
2639 } FMS_GETDRIVEINFOW;
2641 typedef_tident(FMS_GETDRIVEINFO)
2643 typedef struct _FMS_GETFILESELA {
2650 typedef struct _FMS_GETFILESELW {
2657 typedef_tident(FMS_GETFILESEL)
2659 typedef struct _FMS_LOADA {
2661 CHAR szMenuName[MENU_TEXT_LEN];
2666 typedef struct _FMS_LOADW {
2668 WCHAR szMenuName[MENU_TEXT_LEN];
2673 typedef_tident(FMS_LOAD)
2675 typedef struct _FMS_TOOLBARLOAD {
2677 LPEXT_BUTTON lpButtons;
2685 typedef struct _FORM_INFO_1A {
2689 RECTL ImageableArea;
2692 typedef struct _FORM_INFO_1W {
2696 RECTL ImageableArea;
2699 typedef_tident(FORM_INFO_1)
2701 typedef struct _FORMAT_PARAMETERS {
2702 MEDIA_TYPE MediaType;
2703 DWORD StartCylinderNumber;
2704 DWORD EndCylinderNumber;
2705 DWORD StartHeadNumber;
2706 DWORD EndHeadNumber;
2707 } FORMAT_PARAMETERS ;
2709 typedef struct _formatrange {
2717 typedef struct tagGCP_RESULTSA {
2727 } GCP_RESULTSA, *LPGCP_RESULTSA;
2729 typedef struct tagGCP_RESULTSW {
2739 } GCP_RESULTSW, *LPGCP_RESULTSW;
2741 typedef_tident(GCP_RESULTS)
2744 typedef struct _GLYPHMETRICS {
2747 POINT gmptGlyphOrigin;
2750 } GLYPHMETRICS, *LPGLYPHMETRICS;
2752 typedef struct tagHANDLETABLE {
2753 HGDIOBJ objectHandle[1];
2754 } HANDLETABLE, *LPHANDLETABLE;
2756 typedef struct _HD_HITTESTINFO {
2762 typedef struct _HD_ITEMA {
2772 typedef struct _HD_ITEMW {
2782 typedef_tident(HD_ITEM)
2784 typedef struct _WINDOWPOS {
2786 HWND hwndInsertAfter;
2792 } WINDOWPOS, *PWINDOWPOS, *LPWINDOWPOS;
2794 typedef struct _HD_LAYOUT {
2799 typedef struct _HD_NOTIFYA {
2806 typedef struct _HD_NOTIFYW {
2813 typedef_tident(HD_NOTIFY)
2815 typedef struct tagHELPINFO {
2822 } HELPINFO, *LPHELPINFO;
2824 typedef struct tagMULTIKEYHELPA {
2827 CHAR szKeyphrase[1];
2828 } MULTIKEYHELPA, *PMULTIKEYHELPA, *LPMULTIKEYHELPA;
2830 typedef struct tagMULTIKEYHELPW {
2833 WCHAR szKeyphrase[1];
2834 } MULTIKEYHELPW, *PMULTIKEYHELPW, *LPMULTIKEYHELPW;
2836 typedef_tident(MULTIKEYHELP)
2837 typedef_tident(PMULTIKEYHELP)
2838 typedef_tident(LPMULTIKEYHELP)
2848 } HELPWININFOA, *PHELPWININFOA, *LPHELPWININFOA;
2857 WCHAR rgchMember[2];
2858 } HELPWININFOW, *PHELPWININFOW, *LPHELPWININFOW;
2860 typedef_tident(HELPWININFO)
2861 typedef_tident(PHELPWININFO)
2862 typedef_tident(LPHELPWININFO)
2864 typedef struct tagHIGHCONTRASTA {
2867 LPSTR lpszDefaultScheme;
2868 } HIGHCONTRASTA, *LPHIGHCONTRASTA;
2870 typedef struct tagHIGHCONTRASTW {
2873 LPWSTR lpszDefaultScheme;
2874 } HIGHCONTRASTW, *LPHIGHCONTRASTW;
2876 typedef_tident(HIGHCONTRAST)
2877 typedef_tident(LPHIGHCONTRAST)
2879 typedef struct tagHSZPAIR {
2884 typedef struct _ICONINFO {
2890 } ICONINFO, *PICONINFO;
2892 typedef struct tagICONMETRICSA {
2898 } ICONMETRICSA, *LPICONMETRICSA;
2900 typedef struct tagICONMETRICSW {
2906 } ICONMETRICSW, *LPICONMETRICSW;
2908 typedef_tident(ICONMETRICS)
2909 typedef_tident(LPICONMETRICS)
2911 typedef struct _IMAGEINFO {
2919 typedef struct _JOB_INFO_1A {
2932 SYSTEMTIME Submitted;
2935 typedef struct _JOB_INFO_1W {
2937 LPWSTR pPrinterName;
2938 LPWSTR pMachineName;
2948 SYSTEMTIME Submitted;
2951 typedef_tident(JOB_INFO_1)
2954 typedef struct _JOB_INFO_2A {
2962 LPSTR pPrintProcessor;
2967 PSECURITY_DESCRIPTOR pSecurityDescriptor;
2975 SYSTEMTIME Submitted;
2977 DWORD PagesPrinted ;
2980 typedef struct _JOB_INFO_2W {
2982 LPWSTR pPrinterName;
2983 LPWSTR pMachineName;
2988 LPWSTR pPrintProcessor;
2993 PSECURITY_DESCRIPTOR pSecurityDescriptor;
3001 SYSTEMTIME Submitted;
3003 DWORD PagesPrinted ;
3006 typedef_tident(JOB_INFO_2)
3009 typedef struct tagKERNINGPAIR {
3013 } KERNINGPAIR, *LPKERNINGPAIR;
3015 typedef struct _LANA_ENUM {
3017 UCHAR lana[MAX_LANA];
3021 typedef struct tagLOCALESIGNATURE {
3023 DWORD lsCsbDefault[2];
3024 DWORD lsCsbSupported[2];
3028 typedef struct _LOCALGROUP_MEMBERS_INFO_0 {
3030 } LOCALGROUP_MEMBERS_INFO_0;
3033 typedef struct _LOCALGROUP_MEMBERS_INFO_3 {
3034 LPWSTR lgrmi3_domainandname;
3035 } LOCALGROUP_MEMBERS_INFO_3;
3037 typedef long FXPT16DOT16, * LPFXPT16DOT16;
3041 typedef LUID_AND_ATTRIBUTES LUID_AND_ATTRIBUTES_ARRAY[ANYSIZE_ARRAY];
3042 typedef LUID_AND_ATTRIBUTES_ARRAY *PLUID_AND_ATTRIBUTES_ARRAY;
3044 typedef struct _LV_COLUMNA {
3053 typedef struct _LV_COLUMNW {
3062 typedef_tident(LV_COLUMN)
3064 typedef struct _LV_ITEMA {
3076 typedef struct _LV_ITEMW {
3088 typedef_tident(LV_ITEM)
3090 typedef struct tagLV_DISPINFOA {
3095 typedef struct tagLV_DISPINFOW {
3100 typedef_tident(LV_DISPINFO)
3102 typedef struct _LV_FINDINFOA {
3110 typedef struct _LV_FINDINFOW {
3118 typedef_tident(LV_FINDINFO)
3120 typedef struct _LV_HITTESTINFO {
3126 typedef struct tagLV_KEYDOWN {
3132 typedef struct _MAT2 {
3139 typedef struct tagMDICREATESTRUCTA {
3149 } MDICREATESTRUCTA, *LPMDICREATESTRUCTA;
3151 typedef struct tagMDICREATESTRUCTW {
3161 } MDICREATESTRUCTW, *LPMDICREATESTRUCTW;
3163 typedef_tident(MDICREATESTRUCT)
3164 typedef_tident(LPMDICREATESTRUCT)
3166 typedef struct tagMEASUREITEMSTRUCT {
3173 } MEASUREITEMSTRUCT, *LPMEASUREITEMSTRUCT;
3175 typedef struct _MEMORYSTATUS {
3180 DWORD dwTotalPageFile;
3181 DWORD dwAvailPageFile;
3182 DWORD dwTotalVirtual;
3183 DWORD dwAvailVirtual;
3184 } MEMORYSTATUS, *LPMEMORYSTATUS;
3190 } MENUEX_TEMPLATE_HEADER;
3199 } MENUEX_TEMPLATE_ITEM;
3202 typedef struct tagMENUITEMINFOA {
3209 HBITMAP hbmpChecked;
3210 HBITMAP hbmpUnchecked;
3215 } MENUITEMINFOA, *LPMENUITEMINFOA;
3216 typedef CONST MENUITEMINFOA* LPCMENUITEMINFOA;
3218 typedef struct tagMENUITEMINFOW {
3225 HBITMAP hbmpChecked;
3226 HBITMAP hbmpUnchecked;
3231 } MENUITEMINFOW, *LPMENUITEMINFOW;
3232 typedef CONST MENUITEMINFOW* LPCMENUITEMINFOW;
3234 typedef_tident(MENUITEMINFO)
3235 typedef_tident(LPMENUITEMINFO)
3236 typedef_tident(LPCMENUITEMINFO)
3247 } MENUITEMTEMPLATEHEADER;
3248 typedef VOID MENUTEMPLATE, *LPMENUTEMPLATE;
3250 typedef struct tagMETAFILEPICT {
3255 } METAFILEPICT, *PMETAFILEPICT, *LPMETAFILEPICT;
3257 typedef struct tagMETAHEADER {
3264 WORD mtNoParameters;
3265 } PACKED METAHEADER;
3267 typedef struct tagMETARECORD {
3271 } METARECORD, *LPMETARECORD;
3273 typedef struct tagMINIMIZEDMETRICS {
3279 } MINIMIZEDMETRICS, *LPMINIMIZEDMETRICS;
3281 typedef struct tagMINMAXINFO {
3284 POINT ptMaxPosition;
3285 POINT ptMinTrackSize;
3286 POINT ptMaxTrackSize;
3289 typedef struct modemdevcaps_tag {
3291 DWORD dwRequiredSize;
3292 DWORD dwDevSpecificOffset;
3293 DWORD dwDevSpecificSize;
3295 DWORD dwModemProviderVersion;
3296 DWORD dwModemManufacturerOffset;
3297 DWORD dwModemManufacturerSize;
3298 DWORD dwModemModelOffset;
3299 DWORD dwModemModelSize;
3300 DWORD dwModemVersionOffset;
3301 DWORD dwModemVersionSize;
3303 DWORD dwDialOptions;
3304 DWORD dwCallSetupFailTimer;
3305 DWORD dwInactivityTimeout;
3306 DWORD dwSpeakerVolume;
3307 DWORD dwSpeakerMode;
3308 DWORD dwModemOptions;
3312 BYTE abVariablePortion [1];
3313 } MODEMDEVCAPS, *PMODEMDEVCAPS, *LPMODEMDEVCAPS;
3315 typedef struct modemsettings_tag {
3317 DWORD dwRequiredSize;
3318 DWORD dwDevSpecificOffset;
3319 DWORD dwDevSpecificSize;
3321 DWORD dwCallSetupFailTimer;
3322 DWORD dwInactivityTimeout;
3323 DWORD dwSpeakerVolume;
3324 DWORD dwSpeakerMode;
3325 DWORD dwPreferredModemOptions;
3327 DWORD dwNegotiatedModemOptions;
3328 DWORD dwNegotiatedDCERate;
3330 BYTE abVariablePortion[1];
3331 } MODEMSETTINGS, *PMODEMSETTINGS, *LPMODEMSETTINGS;
3333 typedef struct tagMONCBSTRUCT {
3351 typedef struct tagMONCONVSTRUCT {
3362 typedef struct tagMONERRSTRUCT {
3369 typedef struct tagMONHSZSTRUCTA {
3378 typedef struct tagMONHSZSTRUCTW {
3387 typedef_tident(MONHSZSTRUCT)
3389 typedef struct _MONITOR_INFO_1A {
3393 typedef struct _MONITOR_INFO_1W {
3397 typedef_tident(MONITOR_INFO_1)
3399 typedef struct _MONITOR_INFO_2A {
3401 LPSTR pEnvironment ;
3405 typedef struct _MONITOR_INFO_2W {
3407 LPWSTR pEnvironment ;
3411 typedef_tident(MONITOR_INFO_2)
3413 typedef struct tagMONLINKSTRUCT {
3417 WINBOOL fEstablished;
3428 typedef struct tagMONMSGSTRUCT {
3436 DDEML_MSG_HOOK_DATA dmhd;
3439 typedef struct tagMOUSEHOOKSTRUCT {
3444 } MOUSEHOOKSTRUCT, *PMOUSEHOOKSTRUCT, *LPMOUSEHOOKSTRUCT;
3446 typedef struct _MOUSEKEYS {
3450 DWORD iTimeToMaxSpeed;
3456 typedef struct tagMSG {
3465 typedef void CALLBACK (*MSGBOXCALLBACK) (LPHELPINFO lpHelpInfo);
3470 HINSTANCE hInstance;
3475 DWORD dwContextHelpId;
3476 MSGBOXCALLBACK lpfnMsgBoxCallback;
3478 } MSGBOXPARAMS, *PMSGBOXPARAMS, *LPMSGBOXPARAMS;
3480 typedef struct _msgfilter {
3487 typedef struct _NAME_BUFFER {
3488 UCHAR name[NCBNAMSZ];
3493 typedef struct _NCB {
3500 UCHAR ncb_callname[NCBNAMSZ];
3501 UCHAR ncb_name[NCBNAMSZ];
3504 void (*ncb_post) (struct _NCB *);
3507 UCHAR ncb_reserve[10];
3511 typedef struct _NCCALCSIZE_PARAMS {
3514 } NCCALCSIZE_PARAMS;
3516 typedef struct _NDDESHAREINFOA {
3518 LPSTR lpszShareName;
3520 LPSTR lpszAppTopicList;
3530 typedef struct _NDDESHAREINFOW {
3532 LPWSTR lpszShareName;
3534 LPWSTR lpszAppTopicList;
3541 LPWSTR lpszItemList;
3544 typedef_tident(NDDESHAREINFO)
3546 typedef struct _NETRESOURCEA {
3549 DWORD dwDisplayType;
3555 } NETRESOURCEA, *LPNETRESOURCEA;
3557 typedef struct _NETRESOURCEW {
3560 DWORD dwDisplayType;
3563 LPWSTR lpRemoteName;
3566 } NETRESOURCEW, *LPNETRESOURCEW;
3568 typedef_tident(NETRESOURCE)
3569 typedef_tident(LPNETRESOURCE)
3571 typedef struct tagNEWCPLINFOA {
3574 DWORD dwHelpContext;
3579 CHAR szHelpFile[128];
3582 typedef struct tagNEWCPLINFOW {
3585 DWORD dwHelpContext;
3590 WCHAR szHelpFile[128];
3593 typedef_tident(NEWCPLINFO)
3595 typedef struct tagNEWTEXTMETRICA {
3599 LONG tmInternalLeading;
3600 LONG tmExternalLeading;
3601 LONG tmAveCharWidth;
3602 LONG tmMaxCharWidth;
3605 LONG tmDigitizedAspectX;
3606 LONG tmDigitizedAspectY;
3614 BYTE tmPitchAndFamily;
3622 typedef struct tagNEWTEXTMETRICW {
3626 LONG tmInternalLeading;
3627 LONG tmExternalLeading;
3628 LONG tmAveCharWidth;
3629 LONG tmMaxCharWidth;
3632 LONG tmDigitizedAspectX;
3633 LONG tmDigitizedAspectY;
3636 WCHAR tmDefaultChar;
3641 BYTE tmPitchAndFamily;
3649 typedef_tident(NEWTEXTMETRIC)
3651 typedef struct tagNEWTEXTMETRICEXA {
3652 NEWTEXTMETRICA ntmentm;
3653 FONTSIGNATURE ntmeFontSignature;
3656 typedef struct tagNEWTEXTMETRICEXW {
3657 NEWTEXTMETRICW ntmentm;
3658 FONTSIGNATURE ntmeFontSignature;
3661 typedef_tident(NEWTEXTMETRICEX)
3663 typedef struct tagNM_LISTVIEW {
3674 typedef struct _TREEITEM *HTREEITEM;
3676 typedef struct _TV_ITEMA {
3687 } TV_ITEMA, *LPTV_ITEMA;
3689 typedef struct _TV_ITEMW {
3700 } TV_ITEMW, *LPTV_ITEMW;
3702 typedef_tident(TV_ITEM)
3703 typedef_tident(LPTV_ITEM)
3705 typedef struct _NM_TREEVIEWA {
3711 } NM_TREEVIEWA, *LPNM_TREEVIEWA;
3713 typedef struct _NM_TREEVIEWW {
3719 } NM_TREEVIEWW, *LPNM_TREEVIEWW;
3721 typedef_tident(NM_TREEVIEW)
3722 typedef_tident(LPNM_TREEVIEW)
3725 typedef struct _NM_UPDOWN {
3731 typedef struct tagNONCLIENTMETRICSA {
3738 LOGFONTA lfCaptionFont;
3739 int iSmCaptionWidth;
3740 int iSmCaptionHeight;
3741 LOGFONTA lfSmCaptionFont;
3744 LOGFONTA lfMenuFont;
3745 LOGFONTA lfStatusFont;
3746 LOGFONTA lfMessageFont;
3747 } NONCLIENTMETRICSA, *LPNONCLIENTMETRICSA;
3749 typedef struct tagNONCLIENTMETRICSW {
3756 LOGFONTW lfCaptionFont;
3757 int iSmCaptionWidth;
3758 int iSmCaptionHeight;
3759 LOGFONTW lfSmCaptionFont;
3762 LOGFONTW lfMenuFont;
3763 LOGFONTW lfStatusFont;
3764 LOGFONTW lfMessageFont;
3765 } NONCLIENTMETRICSW, *LPNONCLIENTMETRICSW;
3767 typedef_tident(NONCLIENTMETRICS)
3768 typedef_tident(LPNONCLIENTMETRICS)
3770 typedef struct _SERVICE_ADDRESS {
3771 DWORD dwAddressType;
3772 DWORD dwAddressFlags;
3773 DWORD dwAddressLength;
3774 DWORD dwPrincipalLength;
3779 typedef struct _SERVICE_ADDRESSES {
3780 DWORD dwAddressCount;
3781 SERVICE_ADDRESS Addresses[1];
3782 } SERVICE_ADDRESSES, *LPSERVICE_ADDRESSES;
3784 #ifndef _GUID_DEFINED
3785 #define _GUID_DEFINED
3786 typedef struct _GUID
3788 unsigned long Data1;
3789 unsigned short Data2;
3790 unsigned short Data3;
3791 unsigned char Data4[8];
3793 typedef GUID CLSID, *LPCLSID;
3796 typedef struct _SERVICE_INFOA {
3797 LPGUID lpServiceType;
3798 LPSTR lpServiceName;
3801 DWORD dwDisplayHint;
3804 LPSTR lpMachineName;
3805 LPSERVICE_ADDRESSES lpServiceAddress;
3806 BLOB ServiceSpecificInfo;
3807 } SERVICE_INFOA, *LPSERVICE_INFOA;
3809 typedef struct _SERVICE_INFOW {
3810 LPGUID lpServiceType;
3811 LPWSTR lpServiceName;
3814 DWORD dwDisplayHint;
3817 LPWSTR lpMachineName;
3818 LPSERVICE_ADDRESSES lpServiceAddress;
3819 BLOB ServiceSpecificInfo;
3820 } SERVICE_INFOW, *LPSERVICE_INFOW;
3822 typedef_tident(SERVICE_INFO);
3823 typedef_tident(LPSERVICE_INFO);
3825 typedef struct _NS_SERVICE_INFOA {
3827 SERVICE_INFOA ServiceInfo;
3830 typedef struct _NS_SERVICE_INFOW {
3832 SERVICE_INFOW ServiceInfo;
3835 typedef_tident(NS_SERVICE_INFO);
3837 typedef struct _numberfmtA {
3842 LPSTR lpThousandSep;
3846 typedef struct _numberfmtW {
3850 LPWSTR lpDecimalSep;
3851 LPWSTR lpThousandSep;
3855 typedef_tident(NUMBERFMT)
3857 typedef struct _OFSTRUCT {
3863 CHAR szPathName[OFS_MAXPATHNAME];
3864 } OFSTRUCT, *LPOFSTRUCT;
3866 typedef struct tagOFNA {
3869 HINSTANCE hInstance;
3871 LPSTR lpstrCustomFilter;
3872 DWORD nMaxCustFilter;
3876 LPSTR lpstrFileTitle;
3877 DWORD nMaxFileTitle;
3878 LPCSTR lpstrInitialDir;
3882 WORD nFileExtension;
3885 LPOFNHOOKPROC lpfnHook;
3886 LPCSTR lpTemplateName;
3887 } OPENFILENAMEA, *LPOPENFILENAMEA;
3889 typedef struct tagOFNW {
3892 HINSTANCE hInstance;
3893 LPCWSTR lpstrFilter;
3894 LPWSTR lpstrCustomFilter;
3895 DWORD nMaxCustFilter;
3899 LPWSTR lpstrFileTitle;
3900 DWORD nMaxFileTitle;
3901 LPCWSTR lpstrInitialDir;
3905 WORD nFileExtension;
3906 LPCWSTR lpstrDefExt;
3908 LPOFNHOOKPROC lpfnHook;
3909 LPCWSTR lpTemplateName;
3910 } OPENFILENAMEW, *LPOPENFILENAMEW;
3912 typedef_tident(OPENFILENAME)
3913 typedef_tident(LPOPENFILENAME)
3915 typedef struct _OFNOTIFYA {
3917 LPOPENFILENAMEA lpOFN;
3919 } OFNOTIFYA, *LPOFNOTIFYA;
3921 typedef struct _OFNOTIFYW {
3923 LPOPENFILENAMEW lpOFN;
3925 } OFNOTIFYW, *LPOFNOTIFYW;
3927 typedef_tident(OFNOTIFY)
3928 typedef_tident(LPOFNOTIFY)
3930 typedef struct _OSVERSIONINFOA {
3931 DWORD dwOSVersionInfoSize;
3932 DWORD dwMajorVersion;
3933 DWORD dwMinorVersion;
3934 DWORD dwBuildNumber;
3936 CHAR szCSDVersion[ 128 ];
3937 } OSVERSIONINFOA, *POSVERSIONINFOA, *LPOSVERSIONINFOA;
3939 typedef struct _OSVERSIONINFOW {
3940 DWORD dwOSVersionInfoSize;
3941 DWORD dwMajorVersion;
3942 DWORD dwMinorVersion;
3943 DWORD dwBuildNumber;
3945 WCHAR szCSDVersion[ 128 ];
3946 } OSVERSIONINFOW, *POSVERSIONINFOW, *LPOSVERSIONINFOW, RTL_OSVERSIONINFOW, *PRTL_OSVERSIONINFOW;
3948 typedef_tident(OSVERSIONINFO)
3950 typedef struct _OSVERSIONINFOEXA
3951 #if defined(__cplusplus)
3952 : public OSVERSIONINFOA
3959 DWORD dwOSVersionInfoSize;
3960 DWORD dwMajorVersion;
3961 DWORD dwMinorVersion;
3962 DWORD dwBuildNumber;
3964 CHAR szCSDVersion[ 128 ];
3966 WORD wServicePackMajor;
3967 WORD wServicePackMinor;
3971 } OSVERSIONINFOEXA, *POSVERSIONINFOEXA, *LPOSVERSIONINFOEXA;
3973 typedef struct _OSVERSIONINFOEXW
3974 #if defined(__cplusplus)
3975 : public OSVERSIONINFOW
3982 DWORD dwOSVersionInfoSize;
3983 DWORD dwMajorVersion;
3984 DWORD dwMinorVersion;
3985 DWORD dwBuildNumber;
3987 WCHAR szCSDVersion[ 128 ];
3989 WORD wServicePackMajor;
3990 WORD wServicePackMinor;
3994 } OSVERSIONINFOEXW, *POSVERSIONINFOEXW, *LPOSVERSIONINFOEXW, RTL_OSVERSIONINFOEXW, *PRTL_OSVERSIONINFOEXW;
3996 typedef_tident(OSVERSIONINFOEX)
3998 typedef struct tagTEXTMETRICA {
4002 LONG tmInternalLeading;
4003 LONG tmExternalLeading;
4004 LONG tmAveCharWidth;
4005 LONG tmMaxCharWidth;
4008 LONG tmDigitizedAspectX;
4009 LONG tmDigitizedAspectY;
4017 BYTE tmPitchAndFamily;
4019 } TEXTMETRICA, *LPTEXTMETRICA;
4021 typedef struct tagTEXTMETRICW {
4025 LONG tmInternalLeading;
4026 LONG tmExternalLeading;
4027 LONG tmAveCharWidth;
4028 LONG tmMaxCharWidth;
4031 LONG tmDigitizedAspectX;
4032 LONG tmDigitizedAspectY;
4035 WCHAR tmDefaultChar;
4040 BYTE tmPitchAndFamily;
4042 } TEXTMETRICW, *LPTEXTMETRICW;
4044 typedef_tident(TEXTMETRIC)
4045 typedef_tident(LPTEXTMETRIC)
4047 typedef struct _OUTLINETEXTMETRICA {
4049 TEXTMETRICA otmTextMetrics;
4051 PANOSE otmPanoseNumber;
4052 UINT otmfsSelection;
4054 int otmsCharSlopeRise;
4055 int otmsCharSlopeRun;
4061 UINT otmsCapEmHeight;
4067 UINT otmusMinimumPPEM;
4068 POINT otmptSubscriptSize;
4069 POINT otmptSubscriptOffset;
4070 POINT otmptSuperscriptSize;
4071 POINT otmptSuperscriptOffset;
4072 UINT otmsStrikeoutSize;
4073 int otmsStrikeoutPosition;
4074 int otmsUnderscoreSize;
4075 int otmsUnderscorePosition;
4076 PSTR otmpFamilyName;
4080 } OUTLINETEXTMETRICA, *LPOUTLINETEXTMETRICA;
4082 typedef struct _OUTLINETEXTMETRICW {
4084 TEXTMETRICW otmTextMetrics;
4086 PANOSE otmPanoseNumber;
4087 UINT otmfsSelection;
4089 int otmsCharSlopeRise;
4090 int otmsCharSlopeRun;
4096 UINT otmsCapEmHeight;
4102 UINT otmusMinimumPPEM;
4103 POINT otmptSubscriptSize;
4104 POINT otmptSubscriptOffset;
4105 POINT otmptSuperscriptSize;
4106 POINT otmptSuperscriptOffset;
4107 UINT otmsStrikeoutSize;
4108 int otmsStrikeoutPosition;
4109 int otmsUnderscoreSize;
4110 int otmsUnderscorePosition;
4111 PSTR otmpFamilyName;
4115 } OUTLINETEXTMETRICW, *LPOUTLINETEXTMETRICW;
4117 typedef_tident(OUTLINETEXTMETRIC)
4118 typedef_tident(LPOUTLINETEXTMETRIC)
4120 typedef struct _OVERLAPPED {
4126 } OVERLAPPED, *LPOVERLAPPED;
4128 typedef struct tagPSDA {
4137 HINSTANCE hInstance;
4139 LPPAGESETUPHOOK lpfnPageSetupHook;
4140 LPPAGEPAINTHOOK lpfnPagePaintHook;
4141 LPCSTR lpPageSetupTemplateName;
4142 HGLOBAL hPageSetupTemplate;
4143 } PAGESETUPDLGA, *LPPAGESETUPDLGA;
4145 typedef struct tagPSDW {
4154 HINSTANCE hInstance;
4156 LPPAGESETUPHOOK lpfnPageSetupHook;
4157 LPPAGEPAINTHOOK lpfnPagePaintHook;
4158 LPCWSTR lpPageSetupTemplateName;
4159 HGLOBAL hPageSetupTemplate;
4160 } PAGESETUPDLGW, *LPPAGESETUPDLGW;
4162 typedef_tident(PAGESETUPDLG)
4163 typedef_tident(LPPAGESETUPDLG)
4165 typedef struct tagPAINTSTRUCT {
4171 BYTE rgbReserved[32];
4172 } PAINTSTRUCT, *LPPAINTSTRUCT;
4174 typedef struct _paraformat {
4184 LONG rgxTabs[MAX_TAB_STOPS];
4187 typedef struct _PERF_COUNTER_BLOCK {
4189 } PERF_COUNTER_BLOCK;
4191 typedef struct _PERF_COUNTER_DEFINITION {
4193 DWORD CounterNameTitleIndex;
4194 LPWSTR CounterNameTitle;
4195 DWORD CounterHelpTitleIndex;
4196 LPWSTR CounterHelpTitle;
4201 DWORD CounterOffset;
4202 } PERF_COUNTER_DEFINITION;
4204 typedef struct _PERF_DATA_BLOCK {
4209 DWORD TotalByteLength;
4211 DWORD NumObjectTypes;
4212 DWORD DefaultObject;
4213 SYSTEMTIME SystemTime;
4214 LARGE_INTEGER PerfTime;
4215 LARGE_INTEGER PerfFreq;
4216 LARGE_INTEGER PerfTime100nSec;
4217 DWORD SystemNameLength;
4218 DWORD SystemNameOffset;
4221 typedef struct _PERF_INSTANCE_DEFINITION {
4223 DWORD ParentObjectTitleIndex;
4224 DWORD ParentObjectInstance;
4228 } PERF_INSTANCE_DEFINITION;
4230 typedef struct _PERF_OBJECT_TYPE {
4231 DWORD TotalByteLength;
4232 DWORD DefinitionLength;
4234 DWORD ObjectNameTitleIndex;
4235 LPWSTR ObjectNameTitle;
4236 DWORD ObjectHelpTitleIndex;
4237 LPWSTR ObjectHelpTitle;
4240 DWORD DefaultCounter;
4243 LARGE_INTEGER PerfTime;
4244 LARGE_INTEGER PerfFreq;
4247 typedef struct _POLYTEXTA {
4255 } POLYTEXTA, *LPPOLYTEXTA;
4257 typedef struct _POLYTEXTW {
4265 } POLYTEXTW, *LPPOLYTEXTW;
4267 typedef_tident(POLYTEXT)
4268 typedef_tident(LPPOLYTEXT)
4270 typedef struct _PORT_INFO_1A {
4274 typedef struct _PORT_INFO_1W {
4278 typedef_tident(PORT_INFO_1)
4280 typedef struct _PORT_INFO_2A {
4288 typedef struct _PORT_INFO_2W {
4290 LPWSTR pMonitorName;
4291 LPWSTR pDescription;
4296 typedef_tident(PORT_INFO_2)
4298 /* http://www.experts-exchange.com/Programming/Programming_Platforms/Win_Prog/Q_10010678.html
4300 * IOCTL_DISK_MEDIA_REMOVAL disables the mechanism
4301 * on a SCSI device that ejects media. This function
4302 * may or may not be supported on SCSI devices that
4303 * support removable media.
4305 * TRUE means prevent media from being removed.
4306 * FALSE means allow media removal.
4308 typedef struct _PREVENT_MEDIA_REMOVAL {
4309 BOOLEAN PreventMediaRemoval;
4310 } PREVENT_MEDIA_REMOVAL ;
4312 typedef struct tagPDA {
4324 HINSTANCE hInstance;
4326 LPPRINTHOOKPROC lpfnPrintHook;
4327 LPSETUPHOOKPROC lpfnSetupHook;
4328 LPCSTR lpPrintTemplateName;
4329 LPCSTR lpSetupTemplateName;
4330 HANDLE hPrintTemplate;
4331 HANDLE hSetupTemplate;
4332 } PACKED PRINTDLGA, *LPPRINTDLGA;
4334 typedef struct tagPDW {
4346 HINSTANCE hInstance;
4348 LPPRINTHOOKPROC lpfnPrintHook;
4349 LPSETUPHOOKPROC lpfnSetupHook;
4350 LPCWSTR lpPrintTemplateName;
4351 LPCWSTR lpSetupTemplateName;
4352 HANDLE hPrintTemplate;
4353 HANDLE hSetupTemplate;
4354 } PACKED PRINTDLGW, *LPPRINTDLGW;
4356 typedef_tident(PRINTDLG)
4357 typedef_tident(LPPRINTDLG)
4359 typedef struct _PRINTER_DEFAULTSA
4362 LPDEVMODEA pDevMode;
4363 ACCESS_MASK DesiredAccess;
4364 } PRINTER_DEFAULTSA, *PPRINTER_DEFAULTSA, *LPPRINTER_DEFAULTSA;
4366 typedef struct _PRINTER_DEFAULTSW
4369 LPDEVMODEW pDevMode;
4370 ACCESS_MASK DesiredAccess;
4371 } PRINTER_DEFAULTSW, *PPRINTER_DEFAULTSW, *LPPRINTER_DEFAULTSW;
4373 typedef_tident(PRINTER_DEFAULTS)
4374 typedef_tident(PPRINTER_DEFAULTS)
4375 typedef_tident(LPPRINTER_DEFAULTS)
4377 typedef struct _PRINTER_INFO_1A {
4382 } PRINTER_INFO_1A, *PPRINTER_INFO_1A, *LPPRINTER_INFO_1A;
4384 typedef struct _PRINTER_INFO_1W {
4386 LPWSTR pDescription;
4389 } PRINTER_INFO_1W, *PPRINTER_INFO_1W, *LPPRINTER_INFO_1W;
4391 typedef_tident(PRINTER_INFO_1)
4392 typedef_tident(PPRINTER_INFO_1)
4393 typedef_tident(LPPRINTER_INFO_1)
4396 typedef struct _PRINTER_INFO_2A {
4404 LPDEVMODEA pDevMode;
4406 LPSTR pPrintProcessor;
4409 PSECURITY_DESCRIPTOR pSecurityDescriptor;
4412 DWORD DefaultPriority;
4420 typedef struct _PRINTER_INFO_2W {
4422 LPWSTR pPrinterName;
4428 LPDEVMODEW pDevMode;
4430 LPWSTR pPrintProcessor;
4433 PSECURITY_DESCRIPTOR pSecurityDescriptor;
4436 DWORD DefaultPriority;
4444 typedef_tident(PRINTER_INFO_2)
4446 typedef struct _PRINTER_INFO_3 {
4447 PSECURITY_DESCRIPTOR pSecurityDescriptor;
4451 typedef struct _PRINTER_INFO_4A {
4457 typedef struct _PRINTER_INFO_4W {
4458 LPWSTR pPrinterName;
4463 typedef_tident(PRINTER_INFO_4)
4465 typedef struct _PRINTER_INFO_5A {
4469 DWORD DeviceNotSelectedTimeout;
4470 DWORD TransmissionRetryTimeout;
4473 typedef struct _PRINTER_INFO_5W {
4474 LPWSTR pPrinterName;
4477 DWORD DeviceNotSelectedTimeout;
4478 DWORD TransmissionRetryTimeout;
4481 typedef_tident(PRINTER_INFO_5)
4483 typedef struct _PRINTER_NOTIFY_INFO_DATA {
4495 } PRINTER_NOTIFY_INFO_DATA;
4497 typedef struct _PRINTER_NOTIFY_INFO {
4501 PRINTER_NOTIFY_INFO_DATA aData[1];
4502 } PRINTER_NOTIFY_INFO;
4504 typedef struct _PRINTER_NOTIFY_OPTIONS_TYPE {
4511 } PRINTER_NOTIFY_OPTIONS_TYPE, *PPRINTER_NOTIFY_OPTIONS_TYPE;
4513 typedef struct _PRINTER_NOTIFY_OPTIONS {
4517 PPRINTER_NOTIFY_OPTIONS_TYPE pTypes;
4518 } PRINTER_NOTIFY_OPTIONS;
4520 typedef struct _PRINTPROCESSOR_INFO_1A {
4522 } PRINTPROCESSOR_INFO_1A;
4524 typedef struct _PRINTPROCESSOR_INFO_1W {
4526 } PRINTPROCESSOR_INFO_1W;
4528 typedef_tident(PRINTPROCESSOR_INFO_1)
4530 typedef struct _PROCESS_HEAP_ENTRY {
4536 DWORD dwCommittedSize;
4537 DWORD dwUnCommittedSize;
4538 LPVOID lpFirstBlock;
4541 } PROCESS_HEAPENTRY, *LPPROCESS_HEAP_ENTRY;
4543 typedef struct _PROCESS_INFORMATION {
4548 } PROCESS_INFORMATION, *LPPROCESS_INFORMATION;
4550 typedef UINT CALLBACK (*LPFNPSPCALLBACK) (HWND, UINT, LPVOID);
4552 typedef struct _PROPSHEETPAGEA {
4555 HINSTANCE hInstance;
4558 LPCDLGTEMPLATE pResource;
4567 LPFNPSPCALLBACK pfnCallback;
4569 } PROPSHEETPAGEA, *LPPROPSHEETPAGEA;
4570 typedef const PROPSHEETPAGEA* LPCPROPSHEETPAGEA;
4572 typedef struct _PROPSHEETPAGEW {
4575 HINSTANCE hInstance;
4577 LPCWSTR pszTemplate;
4578 LPCDLGTEMPLATE pResource;
4587 LPFNPSPCALLBACK pfnCallback;
4589 } PROPSHEETPAGEW, *LPPROPSHEETPAGEW;
4590 typedef const PROPSHEETPAGEW* LPCPROPSHEETPAGEW;
4592 typedef_tident(PROPSHEETPAGE)
4593 typedef_tident(LPPROPSHEETPAGE)
4594 typedef_tident(LPCPROPSHEETPAGE)
4596 typedef struct _PSP *HPROPSHEETPAGE;
4598 typedef struct _PROPSHEETHEADERA {
4602 HINSTANCE hInstance;
4614 LPCPROPSHEETPAGEA ppsp;
4615 HPROPSHEETPAGE *phpage;
4617 PFNPROPSHEETCALLBACK pfnCallback;
4618 } PROPSHEETHEADERA, *LPPROPSHEETHEADERA;
4619 typedef const PROPSHEETHEADERA *LPCPROPSHEETHEADERA;
4621 typedef struct _PROPSHEETHEADERW {
4625 HINSTANCE hInstance;
4637 LPCPROPSHEETPAGEW ppsp;
4638 HPROPSHEETPAGE *phpage;
4640 PFNPROPSHEETCALLBACK pfnCallback;
4641 } PROPSHEETHEADERW, *LPPROPSHEETHEADERW;
4642 typedef const PROPSHEETHEADERW *LPCPROPSHEETHEADERW;
4644 typedef_tident(PROPSHEETHEADER)
4645 typedef_tident(LPPROPSHEETHEADER)
4646 typedef_tident(LPCPROPSHEETHEADER)
4648 /* PropertySheet callbacks */
4649 typedef WINBOOL CALLBACK (*LPFNADDPROPSHEETPAGE) (HPROPSHEETPAGE, LPARAM);
4650 typedef WINBOOL CALLBACK (*LPFNADDPROPSHEETPAGES) (LPVOID,
4651 LPFNADDPROPSHEETPAGE,
4654 typedef struct _PROTOCOL_INFOA {
4655 DWORD dwServiceFlags;
4661 DWORD dwMessageSize;
4665 typedef struct _PROTOCOL_INFOW {
4666 DWORD dwServiceFlags;
4672 DWORD dwMessageSize;
4676 typedef_tident(PROTOCOL_INFO)
4678 typedef struct _PROVIDOR_INFO_1A {
4680 LPSTR pEnvironment ;
4684 typedef struct _PROVIDOR_INFO_1W {
4686 LPWSTR pEnvironment ;
4690 typedef_tident(PROVIDOR_INFO_1)
4692 typedef struct _PSHNOTIFY {
4695 } PSHNOTIFY, *LPPSHNOTIFY;
4697 typedef struct _punctuationA {
4699 LPSTR szPunctuation;
4702 typedef struct _punctuationW {
4704 LPWSTR szPunctuation;
4707 typedef_tident(PUNCTUATION)
4709 typedef struct _QUERY_SERVICE_CONFIGA {
4710 DWORD dwServiceType;
4712 DWORD dwErrorControl;
4713 LPSTR lpBinaryPathName;
4714 LPSTR lpLoadOrderGroup;
4716 LPSTR lpDependencies;
4717 LPSTR lpServiceStartName;
4718 LPSTR lpDisplayName;
4719 } QUERY_SERVICE_CONFIGA, *LPQUERY_SERVICE_CONFIGA;
4721 typedef struct _QUERY_SERVICE_CONFIGW {
4722 DWORD dwServiceType;
4724 DWORD dwErrorControl;
4725 LPWSTR lpBinaryPathName;
4726 LPWSTR lpLoadOrderGroup;
4728 LPWSTR lpDependencies;
4729 LPWSTR lpServiceStartName;
4730 LPWSTR lpDisplayName;
4731 } QUERY_SERVICE_CONFIGW, *LPQUERY_SERVICE_CONFIGW;
4733 typedef_tident(QUERY_SERVICE_CONFIG)
4734 typedef_tident(LPQUERY_SERVICE_CONFIG)
4736 typedef struct _QUERY_SERVICE_LOCK_STATUSA {
4739 DWORD dwLockDuration;
4740 } QUERY_SERVICE_LOCK_STATUSA, *LPQUERY_SERVICE_LOCK_STATUSA;
4742 typedef struct _QUERY_SERVICE_LOCK_STATUSW {
4745 DWORD dwLockDuration;
4746 } QUERY_SERVICE_LOCK_STATUSW, *LPQUERY_SERVICE_LOCK_STATUSW;
4748 typedef_tident(QUERY_SERVICE_LOCK_STATUS)
4749 typedef_tident(LPQUERY_SERVICE_LOCK_STATUS)
4751 typedef struct _RASAMBA {
4754 CHAR szNetBiosError[ NETBIOS_NAME_LEN + 1 ];
4758 typedef struct _RASAMBW {
4761 WCHAR szNetBiosError[ NETBIOS_NAME_LEN + 1 ];
4765 typedef_tident(RASAMB)
4767 typedef struct _RASCONNA {
4770 CHAR szEntryName[RAS_MaxEntryName + 1];
4772 /* WINVER >= 0x400 */
4773 CHAR szDeviceType[ RAS_MaxDeviceType + 1 ];
4774 CHAR szDeviceName[ RAS_MaxDeviceName + 1 ];
4776 /* WINVER >= 0x401 */
4777 CHAR szPhonebook[ MAX_PATH ];
4780 /* WINVER >= 0x500 */
4783 /* WINVER >= 0x501 */
4789 typedef struct _RASCONNW {
4792 WCHAR szEntryName[RAS_MaxEntryName + 1];
4794 /* WINVER >= 0x400 */
4795 WCHAR szDeviceType[ RAS_MaxDeviceType + 1 ];
4796 WCHAR szDeviceName[ RAS_MaxDeviceName + 1 ];
4798 /* WINVER >= 0x401 */
4799 WCHAR szPhonebook[ MAX_PATH ];
4802 /* WINVER >= 0x500 */
4805 /* WINVER >= 0x501 */
4811 typedef_tident(RASCONN)
4813 typedef struct _RASCONNSTATUSA {
4815 RASCONNSTATE rasconnstate;
4817 CHAR szDeviceType[RAS_MaxDeviceType + 1];
4818 CHAR szDeviceName[RAS_MaxDeviceName + 1];
4821 typedef struct _RASCONNSTATUSW {
4823 RASCONNSTATE rasconnstate;
4825 WCHAR szDeviceType[RAS_MaxDeviceType + 1];
4826 WCHAR szDeviceName[RAS_MaxDeviceName + 1];
4829 typedef_tident(RASCONNSTATUS)
4831 typedef struct _RASDIALEXTENSIONS {
4836 } RASDIALEXTENSIONS;
4838 typedef struct _RASDIALPARAMSA {
4840 CHAR szEntryName[RAS_MaxEntryName + 1];
4841 CHAR szPhoneNumber[RAS_MaxPhoneNumber + 1];
4842 CHAR szCallbackNumber[RAS_MaxCallbackNumber + 1];
4843 CHAR szUserName[UNLEN + 1];
4844 CHAR szPassword[PWLEN + 1];
4845 CHAR szDomain[DNLEN + 1] ;
4848 typedef struct _RASDIALPARAMSW {
4850 WCHAR szEntryName[RAS_MaxEntryName + 1];
4851 WCHAR szPhoneNumber[RAS_MaxPhoneNumber + 1];
4852 WCHAR szCallbackNumber[RAS_MaxCallbackNumber + 1];
4853 WCHAR szUserName[UNLEN + 1];
4854 WCHAR szPassword[PWLEN + 1];
4855 WCHAR szDomain[DNLEN + 1] ;
4858 typedef_tident(RASDIALPARAMS)
4860 typedef struct _RASENTRYNAMEA {
4862 CHAR szEntryName[RAS_MaxEntryName + 1];
4865 typedef struct _RASENTRYNAMEW {
4867 WCHAR szEntryName[RAS_MaxEntryName + 1];
4870 typedef_tident(RASENTRYNAME)
4872 typedef struct _RASPPPIPA {
4875 CHAR szIpAddress[ RAS_MaxIpAddress + 1 ];
4878 typedef struct _RASPPPIPW {
4881 WCHAR szIpAddress[ RAS_MaxIpAddress + 1 ];
4884 typedef_tident(RASPPPIP)
4886 typedef struct _RASPPPIPXA {
4889 CHAR szIpxAddress[ RAS_MaxIpxAddress + 1 ];
4892 typedef struct _RASPPPIPXW {
4895 WCHAR szIpxAddress[ RAS_MaxIpxAddress + 1 ];
4898 typedef_tident(RASPPPIPX)
4900 typedef struct _RASPPPNBFA {
4903 DWORD dwNetBiosError;
4904 CHAR szNetBiosError[ NETBIOS_NAME_LEN + 1 ];
4905 CHAR szWorkstationName[ NETBIOS_NAME_LEN + 1 ];
4909 typedef struct _RASPPPNBFW {
4912 DWORD dwNetBiosError;
4913 WCHAR szNetBiosError[ NETBIOS_NAME_LEN + 1 ];
4914 WCHAR szWorkstationName[ NETBIOS_NAME_LEN + 1 ];
4918 typedef_tident(RASPPPNBF)
4920 typedef struct _RASTERIZER_STATUS {
4924 } RASTERIZER_STATUS, *LPRASTERIZER_STATUS;
4926 typedef struct _REASSIGN_BLOCKS {
4929 DWORD BlockNumber[1];
4932 typedef struct _REMOTE_NAME_INFOA {
4933 LPSTR lpUniversalName;
4934 LPSTR lpConnectionName;
4935 LPSTR lpRemainingPath;
4936 } REMOTE_NAME_INFOA;
4938 typedef struct _REMOTE_NAME_INFOW {
4939 LPWSTR lpUniversalName;
4940 LPWSTR lpConnectionName;
4941 LPWSTR lpRemainingPath;
4942 } REMOTE_NAME_INFOW;
4944 typedef_tident(REMOTE_NAME_INFO)
4948 typedef struct _reobject {
4952 LPOLEOBJECT poleobj;
4954 LPOLECLIENTSITE polesite;
4962 typedef struct _repastespecial {
4967 typedef struct _reqresize {
4972 typedef struct _RGNDATAHEADER {
4980 typedef struct _RGNDATA {
4983 } RGNDATA, *PRGNDATA, *LPRGNDATA;
4985 typedef struct tagSCROLLINFO {
4993 } SCROLLINFO, *LPSCROLLINFO;
4994 typedef SCROLLINFO const *LPCSCROLLINFO;
4997 typedef struct _selchange {
5003 typedef struct tagSERIALKEYS {
5006 LPSTR lpszActivePort;
5010 } SERIALKEYS, * LPSERIALKEYS;
5012 typedef struct _SERVICE_TABLE_ENTRYA {
5013 LPSTR lpServiceName;
5014 LPSERVICE_MAIN_FUNCTIONA lpServiceProc;
5015 } SERVICE_TABLE_ENTRYA, *LPSERVICE_TABLE_ENTRYA;
5017 typedef struct _SERVICE_TABLE_ENTRYW {
5018 LPWSTR lpServiceName;
5019 LPSERVICE_MAIN_FUNCTIONW lpServiceProc;
5020 } SERVICE_TABLE_ENTRYW, *LPSERVICE_TABLE_ENTRYW;
5022 typedef_tident(SERVICE_TABLE_ENTRY)
5023 typedef_tident(LPSERVICE_TABLE_ENTRY)
5025 typedef struct _SERVICE_TYPE_VALUE_ABSA {
5031 } SERVICE_TYPE_VALUE_ABSA;
5033 typedef struct _SERVICE_TYPE_VALUE_ABSW {
5039 } SERVICE_TYPE_VALUE_ABSW;
5041 typedef_tident(SERVICE_TYPE_VALUE_ABS)
5043 typedef struct _SERVICE_TYPE_INFO_ABSA {
5046 SERVICE_TYPE_VALUE_ABSA Values[1];
5047 } SERVICE_TYPE_INFO_ABSA;
5049 typedef struct _SERVICE_TYPE_INFO_ABSW {
5052 SERVICE_TYPE_VALUE_ABSW Values[1];
5053 } SERVICE_TYPE_INFO_ABSW;
5055 typedef_tident(SERVICE_TYPE_INFO_ABS)
5057 typedef struct _SESSION_BUFFER {
5060 UCHAR local_name[NCBNAMSZ];
5061 UCHAR remote_name[NCBNAMSZ];
5062 UCHAR rcvs_outstanding;
5063 UCHAR sends_outstanding;
5066 typedef struct _SESSION_HEADER {
5069 UCHAR rcv_dg_outstanding;
5070 UCHAR rcv_any_outstanding;
5073 typedef enum tagSHCONTF {
5074 SHCONTF_FOLDERS = 32,
5075 SHCONTF_NONFOLDERS = 64,
5076 SHCONTF_INCLUDEHIDDEN = 128,
5077 SHCONTF_INIT_ON_FIRST_NEXT = 256,
5078 SHCONTF_NETPRINTERSRCH = 512,
5079 SHCONTF_SHAREABLE = 1024,
5080 SHCONTF_STORAGE = 2048
5083 typedef struct _SHFILEINFO {
5087 char szDisplayName[MAX_PATH];
5088 char szTypeName[80];
5091 typedef WORD FILEOP_FLAGS;
5093 typedef struct _SHFILEOPSTRUCTA {
5098 FILEOP_FLAGS fFlags;
5099 WINBOOL fAnyOperationsAborted;
5100 LPVOID hNameMappings;
5101 LPCSTR lpszProgressTitle;
5102 } SHFILEOPSTRUCTA, *LPSHFILEOPSTRUCTA;
5104 typedef struct _SHFILEOPSTRUCTW {
5109 FILEOP_FLAGS fFlags;
5110 WINBOOL fAnyOperationsAborted;
5111 LPVOID hNameMappings;
5112 LPCWSTR lpszProgressTitle;
5113 } SHFILEOPSTRUCTW, *LPSHFILEOPSTRUCTW;
5115 typedef_tident(SHFILEOPSTRUCT)
5116 typedef_tident(LPSHFILEOPSTRUCT)
5118 typedef enum tagSHGDN {
5121 SHGDN_FORPARSING = 0x8000,
5124 typedef struct _SHNAMEMAPPINGA {
5129 } SHNAMEMAPPINGA, *LPSHNAMEMAPPINGA;
5131 typedef struct _SHNAMEMAPPINGW {
5136 } SHNAMEMAPPINGW, *LPSHNAMEMAPPINGW;
5138 typedef_tident(SHNAMEMAPPING)
5139 typedef_tident(LPSHNAMEMAPPING)
5141 typedef struct tagSOUNDSENTRYA {
5144 DWORD iFSTextEffect;
5145 DWORD iFSTextEffectMSec;
5146 DWORD iFSTextEffectColorBits;
5147 DWORD iFSGrafEffect;
5148 DWORD iFSGrafEffectMSec;
5149 DWORD iFSGrafEffectColor;
5150 DWORD iWindowsEffect;
5151 DWORD iWindowsEffectMSec;
5152 LPSTR lpszWindowsEffectDLL;
5153 DWORD iWindowsEffectOrdinal;
5154 } SOUNDSENTRYA, *LPSOUNDSENTRYA;
5156 typedef struct tagSOUNDSENTRYW {
5159 DWORD iFSTextEffect;
5160 DWORD iFSTextEffectMSec;
5161 DWORD iFSTextEffectColorBits;
5162 DWORD iFSGrafEffect;
5163 DWORD iFSGrafEffectMSec;
5164 DWORD iFSGrafEffectColor;
5165 DWORD iWindowsEffect;
5166 DWORD iWindowsEffectMSec;
5167 LPWSTR lpszWindowsEffectDLL;
5168 DWORD iWindowsEffectOrdinal;
5169 } SOUNDSENTRYW, *LPSOUNDSENTRYW;
5171 typedef_tident(SOUNDSENTRY)
5172 typedef_tident(LPSOUNDSENTRY)
5174 typedef struct _STARTUPINFOA {
5183 DWORD dwXCountChars;
5184 DWORD dwYCountChars;
5185 DWORD dwFillAttribute;
5193 } STARTUPINFOA, *LPSTARTUPINFOA;
5195 typedef struct _STARTUPINFOW {
5204 DWORD dwXCountChars;
5205 DWORD dwYCountChars;
5206 DWORD dwFillAttribute;
5214 } STARTUPINFOW, *LPSTARTUPINFOW;
5216 typedef_tident(STARTUPINFO)
5217 typedef_tident(LPSTARTUPINFO)
5219 typedef struct tagSTICKYKEYS {
5222 } STICKYKEYS, *LPSTICKYKEYS;
5224 typedef struct _STRRET {
5230 char cStr[MAX_PATH];
5232 } STRRET, *LPSTRRET;
5234 typedef struct _tagSTYLEBUF {
5236 CHAR szDescription[32];
5237 } STYLEBUF, *LPSTYLEBUF;
5239 typedef struct tagSTYLESTRUCT {
5242 } STYLESTRUCT, * LPSTYLESTRUCT;
5244 typedef struct _ACCESS_ALLOWED_ACE {
5248 } ACCESS_ALLOWED_ACE;
5250 typedef ACCESS_ALLOWED_ACE *PACCESS_ALLOWED_ACE;
5252 typedef struct _ACCESS_DENIED_ACE {
5256 } ACCESS_DENIED_ACE;
5257 typedef ACCESS_DENIED_ACE *PACCESS_DENIED_ACE;
5259 typedef struct _SYSTEM_AUDIT_ACE {
5264 typedef SYSTEM_AUDIT_ACE *PSYSTEM_AUDIT_ACE;
5266 typedef struct _SYSTEM_ALARM_ACE {
5271 typedef SYSTEM_ALARM_ACE *PSYSTEM_ALARM_ACE;
5273 typedef struct _ACCESS_ALLOWED_OBJECT_ACE {
5278 GUID InheritedObjectType;
5280 } ACCESS_ALLOWED_OBJECT_ACE, *PACCESS_ALLOWED_OBJECT_ACE;
5282 typedef struct _ACCESS_DENIED_OBJECT_ACE {
5287 GUID InheritedObjectType;
5289 } ACCESS_DENIED_OBJECT_ACE, *PACCESS_DENIED_OBJECT_ACE;
5291 typedef struct _SYSTEM_AUDIT_OBJECT_ACE {
5296 GUID InheritedObjectType;
5298 } SYSTEM_AUDIT_OBJECT_ACE, *PSYSTEM_AUDIT_OBJECT_ACE;
5300 typedef struct _SYSTEM_ALARM_OBJECT_ACE {
5305 GUID InheritedObjectType;
5307 } SYSTEM_ALARM_OBJECT_ACE, *PSYSTEM_ALARM_OBJECT_ACE;
5309 typedef struct _SYSTEM_INFO
5316 WORD wProcessorArchitecture;
5323 LPVOID lpMinimumApplicationAddress;
5324 LPVOID lpMaximumApplicationAddress;
5325 DWORD dwActiveProcessorMask;
5326 DWORD dwNumberOfProcessors;
5327 DWORD dwProcessorType;
5328 DWORD dwAllocationGranularity;
5329 WORD wProcessorLevel;
5330 WORD wProcessorRevision;
5331 } SYSTEM_INFO, *LPSYSTEM_INFO;
5333 typedef struct _SYSTEM_POWER_STATUS {
5336 BYTE BatteryLifePercent;
5338 DWORD BatteryLifeTime;
5339 DWORD BatteryFullLifeTime;
5340 } SYSTEM_POWER_STATUS;
5341 typedef SYSTEM_POWER_STATUS *LPSYSTEM_POWER_STATUS;
5343 typedef struct _TAPE_ERASE {
5347 typedef struct _TAPE_GET_DRIVE_PARAMETERS {
5349 BOOLEAN Compression;
5350 BOOLEAN DataPadding;
5351 BOOLEAN ReportSetmarks;
5352 ULONG DefaultBlockSize;
5353 ULONG MaximumBlockSize;
5354 ULONG MinimumBlockSize;
5355 ULONG MaximumPartitionCount;
5358 ULONG EOTWarningZoneSize;
5359 } TAPE_GET_DRIVE_PARAMETERS;
5361 typedef struct _TAPE_GET_MEDIA_PARAMETERS {
5362 LARGE_INTEGER Capacity;
5363 LARGE_INTEGER Remaining;
5365 DWORD PartitionCount;
5366 BOOLEAN WriteProtected;
5367 } TAPE_GET_MEDIA_PARAMETERS;
5369 typedef struct _TAPE_GET_POSITION {
5374 } TAPE_GET_POSITION;
5376 typedef struct _TAPE_PREPARE {
5380 typedef struct _TAPE_SET_DRIVE_PARAMETERS {
5382 BOOLEAN Compression;
5383 BOOLEAN DataPadding;
5384 BOOLEAN ReportSetmarks;
5385 ULONG EOTWarningZoneSize;
5386 } TAPE_SET_DRIVE_PARAMETERS;
5388 typedef struct _TAPE_SET_MEDIA_PARAMETERS {
5390 } TAPE_SET_MEDIA_PARAMETERS;
5392 typedef struct _TAPE_SET_POSITION {
5397 } TAPE_SET_POSITION;
5399 typedef struct _TAPE_WRITE_MARKS {
5407 } TBADDBITMAP, *LPTBADDBITMAP;
5409 typedef struct _TBBUTTON {
5416 } TBBUTTON, * PTBBUTTON, * LPTBBUTTON;
5417 typedef const TBBUTTON * LPCTBBUTTON;
5425 } TBNOTIFYA, *LPTBNOTIFYA;
5433 } TBNOTIFYW, *LPTBNOTIFYW;
5435 typedef_tident(TBNOTIFY)
5436 typedef_tident(LPTBNOTIFY)
5441 LPCSTR pszValueName;
5447 LPCWSTR pszValueName;
5450 typedef_tident(TBSAVEPARAMS)
5452 typedef struct _TC_HITTESTINFO {
5457 typedef struct _TC_ITEMA {
5467 typedef struct _TC_ITEMW {
5477 typedef_tident(TC_ITEM)
5479 typedef struct _TC_ITEMHEADERA {
5488 typedef struct _TC_ITEMHEADERW {
5497 typedef_tident(TC_ITEMHEADER)
5499 typedef struct _TC_KEYDOWN {
5505 typedef struct _textrangeA {
5510 typedef struct _textrangeW {
5515 typedef_tident(TEXTRANGE)
5517 typedef struct tagTOGGLEKEYS {
5530 } TOOLINFOA, *PTOOLINFOA, *LPTOOLINFOA;
5540 } TOOLINFOW, *PTOOLINFOW, *LPTOOLINFOW;
5542 typedef_tident(TOOLINFO)
5543 typedef_tident(PTOOLINFO)
5544 typedef_tident(LPTOOLINFO)
5552 } TOOLTIPTEXTA, *LPTOOLTIPTEXTA;
5560 } TOOLTIPTEXTW, *LPTOOLTIPTEXTW;
5562 typedef_tident(TOOLTIPTEXT)
5563 typedef_tident(LPTOOLTIPTEXT)
5565 typedef struct tagTPMPARAMS {
5568 } TPMPARAMS, *LPTPMPARAMS;
5570 #if 0 /* RobD - typedef removed due to conflict with mingw headers */
5571 typedef struct _TRANSMIT_FILE_BUFFERS {
5576 } TRANSMIT_FILE_BUFFERS;
5579 typedef struct _TT_HITTESTINFOA {
5583 } TTHITTESTINFOA, *LPHITTESTINFOA;
5585 typedef struct _TT_HITTESTINFOW {
5589 } TTHITTESTINFOW, *LPHITTESTINFOW;
5591 typedef_tident(TTHITTESTINFO)
5592 typedef_tident(LPHITTESTINFO)
5594 typedef struct tagTTPOLYCURVE {
5598 } TTPOLYCURVE, * LPTTPOLYCURVE;
5600 typedef struct _TTPOLYGONHEADER {
5604 } TTPOLYGONHEADER, *PTTPOLYGONHEADER, *LPTTPOLYGONHEADER;
5606 typedef struct _TV_DISPINFOA {
5611 typedef struct _TV_DISPINFOW {
5616 typedef_tident(TV_DISPINFO)
5618 typedef struct _TVHITTESTINFO {
5622 } TV_HITTESTINFO, *LPTV_HITTESTINFO;
5624 typedef struct _TV_INSERTSTRUCTA {
5626 HTREEITEM hInsertAfter;
5628 } TV_INSERTSTRUCTA, *LPTV_INSERTSTRUCTA;
5630 typedef struct _TV_INSERTSTRUCTW {
5632 HTREEITEM hInsertAfter;
5634 } TV_INSERTSTRUCTW, *LPTV_INSERTSTRUCTW;
5636 typedef_tident(TV_INSERTSTRUCT)
5637 typedef_tident(LPTV_INSERTSTRUCT)
5639 typedef struct _TV_KEYDOWN {
5645 typedef struct _TV_SORTCB {
5647 PFNTVCOMPARE lpfnCompare;
5649 } TV_SORTCB, *LPTV_SORTCB;
5656 typedef struct _UNIVERSAL_NAME_INFOA {
5657 LPSTR lpUniversalName;
5658 } UNIVERSAL_NAME_INFOA;
5660 typedef struct _UNIVERSAL_NAME_INFOW {
5661 LPWSTR lpUniversalName;
5662 } UNIVERSAL_NAME_INFOW;
5664 typedef_tident(UNIVERSAL_NAME_INFO)
5666 typedef struct tagUSEROBJECTFLAGS {
5672 typedef struct _VERIFY_INFORMATION {
5673 LARGE_INTEGER StartingOffset;
5675 } VERIFY_INFORMATION ;
5677 typedef struct _VS_FIXEDFILEINFO {
5679 DWORD dwStrucVersion;
5680 DWORD dwFileVersionMS;
5681 DWORD dwFileVersionLS;
5682 DWORD dwProductVersionMS;
5683 DWORD dwProductVersionLS;
5684 DWORD dwFileFlagsMask;
5688 DWORD dwFileSubtype;
5693 typedef struct _WIN32_FIND_DATAA {
5694 DWORD dwFileAttributes;
5695 FILETIME ftCreationTime;
5696 FILETIME ftLastAccessTime;
5697 FILETIME ftLastWriteTime;
5698 DWORD nFileSizeHigh;
5702 CHAR cFileName[ MAX_PATH ];
5703 CHAR cAlternateFileName[ 14 ];
5704 } WIN32_FIND_DATAA, *LPWIN32_FIND_DATAA, *PWIN32_FIND_DATAA;
5706 typedef struct _WIN32_FIND_DATAW {
5707 DWORD dwFileAttributes;
5708 FILETIME ftCreationTime;
5709 FILETIME ftLastAccessTime;
5710 FILETIME ftLastWriteTime;
5711 DWORD nFileSizeHigh;
5715 WCHAR cFileName[ MAX_PATH ];
5716 WCHAR cAlternateFileName[ 14 ];
5717 } WIN32_FIND_DATAW, *LPWIN32_FIND_DATAW, *PWIN32_FIND_DATAW;
5719 typedef_tident(WIN32_FIND_DATA)
5720 typedef_tident(PWIN32_FIND_DATA)
5721 typedef_tident(LPWIN32_FIND_DATA)
5723 typedef struct _WIN32_STREAM_ID {
5725 DWORD dwStreamAttributes;
5727 DWORD dwStreamNameSize;
5731 typedef struct _WINDOWPLACEMENT {
5735 POINT ptMinPosition;
5736 POINT ptMaxPosition;
5737 RECT rcNormalPosition;
5740 typedef struct _WNDCLASSA {
5742 WNDPROC lpfnWndProc;
5748 HBRUSH hbrBackground;
5749 LPCSTR lpszMenuName;
5750 LPCSTR lpszClassName;
5751 } WNDCLASSA, *LPWNDCLASSA;
5753 typedef struct _WNDCLASSW {
5755 WNDPROC lpfnWndProc;
5761 HBRUSH hbrBackground;
5762 LPCWSTR lpszMenuName;
5763 LPCWSTR lpszClassName;
5764 } WNDCLASSW, *LPWNDCLASSW;
5766 typedef_tident(WNDCLASS)
5768 typedef struct _WNDCLASSEXA {
5771 WNDPROC lpfnWndProc;
5777 HBRUSH hbrBackground;
5778 LPCSTR lpszMenuName;
5779 LPCSTR lpszClassName;
5781 } WNDCLASSEXA, *LPWNDCLASSEXA;
5783 typedef struct _WNDCLASSEXW {
5786 WNDPROC lpfnWndProc;
5792 HBRUSH hbrBackground;
5793 LPCWSTR lpszMenuName;
5794 LPCWSTR lpszClassName;
5796 } WNDCLASSEXW, *LPWNDCLASSEXW;
5798 typedef_tident(WNDCLASSEX)
5800 typedef struct _CONNECTDLGSTRUCTA {
5803 LPNETRESOURCEA lpConnRes;
5806 } CONNECTDLGSTRUCTA, *LPCONNECTDLGSTRUCTA;
5808 typedef struct _CONNECTDLGSTRUCTW {
5811 LPNETRESOURCEW lpConnRes;
5814 } CONNECTDLGSTRUCTW, *LPCONNECTDLGSTRUCTW;
5816 typedef_tident(CONNECTDLGSTRUCT)
5817 typedef_tident(LPCONNECTDLGSTRUCT)
5819 typedef struct _DISCDLGSTRUCTA {
5825 } DISCDLGSTRUCTA, *LPDISCDLGSTRUCTA;
5827 typedef struct _DISCDLGSTRUCTW {
5831 LPWSTR lpRemoteName;
5833 } DISCDLGSTRUCTW, *LPDISCDLGSTRUCTW;
5835 typedef_tident(DISCDLGSTRUCT)
5836 typedef_tident(LPDISCDLGSTRUCT)
5838 typedef struct _NETINFOSTRUCT{
5840 DWORD dwProviderVersion;
5842 DWORD dwCharacteristics;
5847 } NETINFOSTRUCT, *LPNETINFOSTRUCT;
5849 typedef struct _NETCONNECTINFOSTRUCT{
5854 DWORD dwOptDataSize;
5855 } NETCONNECTINFOSTRUCT, *LPNETCONNECTINFOSTRUCT;
5857 typedef int CALLBACK (*ENUMMETAFILEPROC) (HDC, HANDLETABLE,
5858 METARECORD, int, LPARAM);
5859 typedef int CALLBACK (*ENHMETAFILEPROC) (HDC, HANDLETABLE,
5860 ENHMETARECORD, int, LPARAM);
5862 typedef int CALLBACK (*ENUMFONTSPROCA) (LPLOGFONTA, LPTEXTMETRICA, DWORD, LPARAM);
5863 typedef int CALLBACK (*ENUMFONTSPROCW) (LPLOGFONTW, LPTEXTMETRICW, DWORD, LPARAM);
5864 typedef_tident(ENUMFONTSPROC)
5865 typedef int CALLBACK (*FONTENUMPROCA) (ENUMLOGFONTA *, NEWTEXTMETRICA *,
5867 typedef int CALLBACK (*FONTENUMPROCW) (ENUMLOGFONTW *, NEWTEXTMETRICW *,
5869 typedef_tident(FONTENUMPROC)
5870 typedef int CALLBACK (*FONTENUMEXPROCA) (ENUMLOGFONTEXA *, NEWTEXTMETRICEXA *,
5872 typedef int CALLBACK (*FONTENUMEXPROCW) (ENUMLOGFONTEXW *, NEWTEXTMETRICEXW *,
5874 typedef_tident(FONTENUMEXPROC)
5876 typedef VOID CALLBACK (*LPOVERLAPPED_COMPLETION_ROUTINE) (DWORD, DWORD,
5880 Structures for the extensions to OpenGL
5882 typedef struct _POINTFLOAT
5886 } POINTFLOAT, *PPOINTFLOAT;
5888 typedef struct _GLYPHMETRICSFLOAT
5892 POINTFLOAT gmfptGlyphOrigin;
5895 } GLYPHMETRICSFLOAT, *PGLYPHMETRICSFLOAT, *LPGLYPHMETRICSFLOAT;
5897 typedef struct tagLAYERPLANEDESCRIPTOR
5914 BYTE cAccumGreenBits;
5915 BYTE cAccumBlueBits;
5916 BYTE cAccumAlphaBits;
5922 COLORREF crTransparent;
5923 } LAYERPLANEDESCRIPTOR, *PLAYERPLANEDESCRIPTOR, *LPLAYERPLANEDESCRIPTOR;
5925 typedef struct tagPIXELFORMATDESCRIPTOR
5942 BYTE cAccumGreenBits;
5943 BYTE cAccumBlueBits;
5944 BYTE cAccumAlphaBits;
5951 DWORD dwVisibleMask;
5953 } PIXELFORMATDESCRIPTOR, *PPIXELFORMATDESCRIPTOR, *LPPIXELFORMATDESCRIPTOR;
5958 LPWSTR usri2_password;
5959 DWORD usri2_password_age;
5961 LPWSTR usri2_home_dir;
5962 LPWSTR usri2_comment;
5964 LPWSTR usri2_script_path;
5965 DWORD usri2_auth_flags;
5966 LPWSTR usri2_full_name;
5967 LPWSTR usri2_usr_comment;
5969 LPWSTR usri2_workstations;
5970 DWORD usri2_last_logon;
5971 DWORD usri2_last_logoff;
5972 DWORD usri2_acct_expires;
5973 DWORD usri2_max_storage;
5974 DWORD usri2_units_per_week;
5975 PBYTE usri2_logon_hours;
5976 DWORD usri2_bad_pw_count;
5977 DWORD usri2_num_logons;
5978 LPWSTR usri2_logon_server;
5979 DWORD usri2_country_code;
5980 DWORD usri2_code_page;
5981 } USER_INFO_2, *PUSER_INFO_2, *LPUSER_INFO_2;
5986 } USER_INFO_0, *PUSER_INFO_0, *LPUSER_INFO_0;
5991 LPWSTR usri3_password;
5992 DWORD usri3_password_age;
5994 LPWSTR usri3_home_dir;
5995 LPWSTR usri3_comment;
5997 LPWSTR usri3_script_path;
5998 DWORD usri3_auth_flags;
5999 LPWSTR usri3_full_name;
6000 LPWSTR usri3_usr_comment;
6002 LPWSTR usri3_workstations;
6003 DWORD usri3_last_logon;
6004 DWORD usri3_last_logoff;
6005 DWORD usri3_acct_expires;
6006 DWORD usri3_max_storage;
6007 DWORD usri3_units_per_week;
6008 PBYTE usri3_logon_hours;
6009 DWORD usri3_bad_pw_count;
6010 DWORD usri3_num_logons;
6011 LPWSTR usri3_logon_server;
6012 DWORD usri3_country_code;
6013 DWORD usri3_code_page;
6014 DWORD usri3_user_id;
6015 DWORD usri3_primary_group_id;
6016 LPWSTR usri3_profile;
6017 LPWSTR usri3_home_dir_drive;
6018 DWORD usri3_password_expired;
6019 } USER_INFO_3, *PUSER_INFO_3, *LPUSER_INFO_3;
6024 LPWSTR grpi2_comment;
6025 DWORD grpi2_group_id;
6026 DWORD grpi2_attributes;
6027 } GROUP_INFO_2, *PGROUP_INFO_2;
6032 } LOCALGROUP_INFO_0, *PLOCALGROUP_INFO_0, *LPLOCALGROUP_INFO_0;
6034 /* PE executable header. */
6035 /* Windows.h now includes pe.h to avoid conflicts! */
6037 typedef struct _DISPLAY_DEVICE {
6039 WCHAR DeviceName[32];
6040 WCHAR DeviceString[128];
6042 WCHAR DeviceID[128];
6043 WCHAR DeviceKey[128];
6044 } DISPLAY_DEVICE, *PDISPLAY_DEVICE;
6046 typedef HANDLE HMONITOR;
6047 typedef HANDLE HDEVNOTIFY;
6049 typedef BOOL CALLBACK (*MonitorEnumProc)(
6055 typedef MonitorEnumProc MONITORENUMPROC;
6063 } FLASHWINFO, *PFLASHWINFO;
6065 typedef struct tagALTTABINFO {
6075 } ALTTABINFO, *PALTTABINFO, *LPALTTABINFO;
6077 typedef struct tagCOMBOBOXINFO {
6085 } COMBOBOXINFO, *PCOMBOBOXINFO, *LPCOMBOBOXINFO;
6087 typedef struct tagCURSORINFO {
6092 } CURSORINFO, *PCURSORINFO, *LPCURSORINFO;
6094 typedef struct tagGUITHREADINFO {
6104 } GUITHREADINFO, *PGUITHREADINFO, *LPGUITHREADINFO;
6106 typedef struct tagLASTINPUTINFO {
6109 } LASTINPUTINFO, *PLASTINPUTINFO;
6111 typedef struct tagMENUBARINFO {
6118 } MENUBARINFO, *PMENUBARINFO;
6120 typedef struct tagMENUINFO {
6126 DWORD dwContextHelpID;
6127 ULONG_PTR dwMenuData;
6128 } MENUINFO, FAR *LPMENUINFO;
6129 typedef MENUINFO CONST FAR *LPCMENUINFO;
6131 typedef struct tagMONITORINFO {
6136 } MONITORINFO, *LPMONITORINFO;
6138 typedef struct tagMOUSEMOVEPOINT {
6142 ULONG_PTR dwExtraInfo;
6143 } MOUSEMOVEPOINT, *PMOUSEMOVEPOINT, *LPMOUSEMOVEPOINT;
6145 #define CCHILDREN_SCROLLBAR 5
6147 typedef struct tagSCROLLBARINFO {
6154 DWORD rgstate[CCHILDREN_SCROLLBAR+1];
6155 } SCROLLBARINFO, *PSCROLLBARINFO, *LPSCROLLBARINFO;
6157 #define CCHILDREN_TITLEBAR 5
6159 typedef struct tagTITLEBARINFO {
6162 DWORD rgstate[CCHILDREN_TITLEBAR+1];
6163 } TITLEBARINFO, *PTITLEBARINFO, *LPTITLEBARINFO;
6165 typedef struct tagWINDOWINFO {
6171 DWORD dwWindowStatus;
6172 UINT cxWindowBorders;
6173 UINT cyWindowBorders;
6174 ATOM atomWindowType;
6175 WORD wCreatorVersion;
6176 } WINDOWINFO, *PWINDOWINFO, *LPWINDOWINFO;
6178 typedef struct tagMOUSEINPUT {
6184 ULONG_PTR dwExtraInfo;
6185 } MOUSEINPUT, *PMOUSEINPUT;
6187 typedef struct tagKEYBDINPUT {
6192 ULONG_PTR dwExtraInfo;
6193 } KEYBDINPUT, *PKEYBDINPUT;
6195 typedef struct tagHARDWAREINPUT {
6199 } HARDWAREINPUT, *PHARDWAREINPUT;
6201 typedef struct tagINPUT {
6209 } INPUT, *PINPUT, FAR* LPINPUT;
6211 typedef struct tagTRACKMOUSEEVENT {
6216 } TRACKMOUSEEVENT, *LPTRACKMOUSEEVENT;
6218 typedef IMAGE_THUNK_DATA * PImgThunkData;
6219 typedef const IMAGE_THUNK_DATA * PCImgThunkData;
6221 typedef struct ImgDelayDescr {
6226 PCImgThunkData pINT;
6227 PCImgThunkData pBoundIAT;
6228 PCImgThunkData pUnloadIAT;
6230 } ImgDelayDescr, * PImgDelayDescr;
6232 typedef const ImgDelayDescr * PCImgDelayDescr;
6234 typedef struct DelayLoadProc {
6242 typedef struct DelayLoadInfo {
6244 PCImgDelayDescr pidd;
6251 } DelayLoadInfo, * PDelayLoadInfo;
6253 typedef struct _RTL_HEAP_TAG_INFO {
6257 } RTL_HEAP_TAG_INFO, *LPRTL_HEAP_TAG_INFO, *PRTL_HEAP_TAG_INFO;
6259 typedef struct _PORT_MESSAGE {
6263 USHORT VirtualRangesOffset;
6268 } PORT_MESSAGE,*PPORT_MESSAGE;
6270 typedef struct _PORT_SECTION_WRITE {
6272 HANDLE SectionHandle;
6273 ULONG SectionOffset;
6276 PVOID TargetViewBase;
6277 } PORT_SECTION_WRITE,*PPORT_SECTION_WRITE;
6279 typedef struct _PORT_SECTION_READ {
6283 } PORT_SECTION_READ,*PPORT_SECTION_READ;
6285 typedef struct _FILE_USER_QUOTA_INFORMATION {
6286 ULONG NextEntryOffset;
6288 LARGE_INTEGER ChangeTime;
6289 LARGE_INTEGER QuotaUsed;
6290 LARGE_INTEGER QuotaThreshold;
6291 LARGE_INTEGER QuotaLimit;
6293 } FILE_USER_QUOTA_INFORMATION,*PFILE_USER_QUOTA_INFORMATION;
6295 typedef struct _FILE_QUOTA_LIST_INFORMATION {
6296 ULONG NextEntryOffset;
6299 } FILE_QUOTA_LIST_INFORMATION,*PFILE_QUOTA_LIST_INFORMATION;
6301 typedef struct _BLENDFUNCTION {
6304 BYTE SourceConstantAlpha;
6306 }BLENDFUNCTION, *PBLENDFUNCTION, *LPBLENDFUNCTION;
6308 typedef enum _GET_FILEEX_INFO_LEVELS {
6309 GetFileExInfoStandard
6310 } GET_FILEEX_INFO_LEVELS;
6312 typedef struct _WIN32_FILE_ATTRIBUTES_DATA {
6313 DWORD dwFileAttributes;
6314 FILETIME ftCreationTime;
6315 FILETIME ftLastAccessTime;
6316 FILETIME ftLastWriteTime;
6317 DWORD nFileSizeHigh;
6319 } WIN32_FILE_ATTRIBUTE_DATA, *LPWIN32_FILE_ATTRIBUTE_DATA;
6323 #endif /* __cplusplus */
6325 #endif /* WIN32_LEAN_AND_MEAN */
6327 #endif /* _GNU_H_WINDOWS32_STRUCTURES */