ReactOS  0.4.13-dev-455-g28ed234
dbghelp.h
Go to the documentation of this file.
1 /*
2  * Declarations for DBGHELP
3  *
4  * Copyright (C) 2003 Eric Pouech
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19  */
20 
21 #ifndef __WINE_DBGHELP_H
22 #define __WINE_DBGHELP_H
23 
24 /* A set of documentation macros (see also imagehlp.h) */
25 #ifndef __deref_out
26 # define __deref_out
27 #endif
28 #ifndef __deref_out_opt
29 # define __deref_out_opt
30 #endif
31 #ifndef __deref_opt_out
32 # define __deref_opt_out
33 #endif
34 #ifndef __in
35 # define __in
36 #endif
37 #ifndef __in_opt
38 # define __in_opt
39 #endif
40 #ifndef __in_bcount
41 # define __in_bcount(x)
42 #endif
43 #ifndef __in_bcount_opt
44 # define __in_bcount_opt(x)
45 #endif
46 #ifndef __in_ecount
47 # define __in_ecount(x)
48 #endif
49 #ifndef __inout
50 # define __inout
51 #endif
52 #ifndef __inout_opt
53 # define __inout_opt
54 #endif
55 #ifndef __inout_bcount
56 # define __inout_bcount(x)
57 #endif
58 #ifndef __inout_ecount
59 # define __inout_ecount(x)
60 #endif
61 #ifndef __out
62 # define __out
63 #endif
64 #ifndef __out_opt
65 # define __out_opt
66 #endif
67 #ifndef __out_bcount
68 # define __out_bcount(x)
69 #endif
70 #ifndef __out_bcount_opt
71 # define __out_bcount_opt(x)
72 #endif
73 #ifndef __out_ecount
74 # define __out_ecount(x)
75 #endif
76 #ifndef __out_ecount_opt
77 # define __out_ecount_opt(x)
78 #endif
79 #ifndef __out_xcount
80 # define __out_xcount(x)
81 #endif
82 
83 
84 #ifdef __cplusplus
85 extern "C" {
86 #endif /* defined(__cplusplus) */
87 
88 #ifdef _WIN64
89 #ifndef _IMAGEHLP64
90 #define _IMAGEHLP64
91 #endif
92 #endif
93 
94 #define IMAGEAPI WINAPI
95 #define DBHLPAPI IMAGEAPI
96 
97 typedef struct _LOADED_IMAGE
98 {
114 
115 /*************************
116  * IMAGEHLP equiv *
117  *************************/
118 
119 typedef enum
120 {
125 } ADDRESS_MODE;
126 
127 #if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
128 #define ADDRESS ADDRESS64
129 #define LPADDRESS LPADDRESS64
130 #else
131 typedef struct _tagADDRESS
132 {
133  DWORD Offset;
134  WORD Segment;
136 } ADDRESS, *LPADDRESS;
137 #endif
138 
139 typedef struct _tagADDRESS64
140 {
141  DWORD64 Offset;
142  WORD Segment;
145 
146 #define SYMF_OMAP_GENERATED 0x00000001
147 #define SYMF_OMAP_MODIFIED 0x00000002
148 #define SYMF_USER_GENERATED 0x00000004
149 #define SYMF_REGISTER 0x00000008
150 #define SYMF_REGREL 0x00000010
151 #define SYMF_FRAMEREL 0x00000020
152 #define SYMF_PARAMETER 0x00000040
153 #define SYMF_LOCAL 0x00000080
154 #define SYMF_CONSTANT 0x00000100
155 #define SYMF_EXPORT 0x00000200
156 #define SYMF_FORWARDER 0x00000400
157 #define SYMF_FUNCTION 0x00000800
158 #define SYMF_VIRTUAL 0x00001000
159 #define SYMF_THUNK 0x00002000
160 #define SYMF_TLSREL 0x00004000
161 
162 typedef enum
163 {
164  SymNone = 0,
174 } SYM_TYPE;
175 
176 #ifdef _NO_CVCONST_H
177 enum SymTagEnum
178 {
179  SymTagNull,
180  SymTagExe,
185  SymTagBlock,
186  SymTagData,
188  SymTagLabel,
190  SymTagUDT,
191  SymTagEnum,
198  SymTagFriend,
204  SymTagVTable,
205  SymTagCustom,
206  SymTagThunk,
210  SymTagCallSite,
211  SymTagInlineSite,
212  SymTagBaseInterface,
213  SymTagVectorType,
214  SymTagMatrixType,
215  SymTagHLSLType,
216  SymTagCaller,
217  SymTagCallee,
218  SymTagExport,
219  SymTagHeapAllocationSite,
220  SymTagCoffGroup,
221  SymTagMax
222 };
223 #endif // _NO_CVCONST_H
224 
225 #if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
226 #define IMAGEHLP_SYMBOL IMAGEHLP_SYMBOL64
227 #define IMAGEHLP_SYMBOLW IMAGEHLP_SYMBOLW64
228 #define PIMAGEHLP_SYMBOL PIMAGEHLP_SYMBOL64
229 #define PIMAGEHLP_SYMBOLW PIMAGEHLP_SYMBOLW64
230 #else
231 typedef struct _IMAGEHLP_SYMBOL
232 {
234  DWORD Address;
235  DWORD Size;
236  DWORD Flags;
238  CHAR Name[1];
240 
241 typedef struct _IMAGEHLP_SYMBOLW
242 {
244  DWORD Address;
245  DWORD Size;
246  DWORD Flags;
248  WCHAR Name[1];
250 #endif
251 
252 typedef struct _IMAGEHLP_SYMBOL64
253 {
256  DWORD Size;
257  DWORD Flags;
259  CHAR Name[1];
261 
262 typedef struct _IMAGEHLP_SYMBOLW64
263 {
266  DWORD Size;
267  DWORD Flags;
269  WCHAR Name[1];
271 
272 #if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
273 #define IMAGEHLP_MODULE IMAGEHLP_MODULE64
274 #define PIMAGEHLP_MODULE PIMAGEHLP_MODULE64
275 #define IMAGEHLP_MODULEW IMAGEHLP_MODULEW64
276 #define PIMAGEHLP_MODULEW PIMAGEHLP_MODULEW64
277 #else
278 typedef struct _IMAGEHLP_MODULE
279 {
284  DWORD CheckSum;
285  DWORD NumSyms;
287  CHAR ModuleName[32];
288  CHAR ImageName[256];
289  CHAR LoadedImageName[256];
291 
292 typedef struct _IMAGEHLP_MODULEW
293 {
298  DWORD CheckSum;
299  DWORD NumSyms;
301  WCHAR ModuleName[32];
302  WCHAR ImageName[256];
303  WCHAR LoadedImageName[256];
305 #endif
306 
307 typedef struct _IMAGEHLP_MODULE64
308 {
313  DWORD CheckSum;
314  DWORD NumSyms;
316  CHAR ModuleName[32];
317  CHAR ImageName[256];
318  CHAR LoadedImageName[256];
319  CHAR LoadedPdbName[256];
320  DWORD CVSig;
321  CHAR CVData[MAX_PATH*3];
322  DWORD PdbSig;
323  GUID PdbSig70;
324  DWORD PdbAge;
329  BOOL TypeInfo;
331  BOOL Publics;
333 
334 typedef struct _IMAGEHLP_MODULEW64
335 {
340  DWORD CheckSum;
341  DWORD NumSyms;
343  WCHAR ModuleName[32];
344  WCHAR ImageName[256];
345  WCHAR LoadedImageName[256];
346  WCHAR LoadedPdbName[256];
347  DWORD CVSig;
348  WCHAR CVData[MAX_PATH*3];
349  DWORD PdbSig;
350  GUID PdbSig70;
351  DWORD PdbAge;
356  BOOL TypeInfo;
358  BOOL Publics;
360 
361 #if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
362 #define IMAGEHLP_LINE IMAGEHLP_LINE64
363 #define PIMAGEHLP_LINE PIMAGEHLP_LINE64
364 #define IMAGEHLP_LINEW IMAGEHLP_LINEW64
365 #define PIMAGEHLP_LINEW PIMAGEHLP_LINEW64
366 #else
367 typedef struct _IMAGEHLP_LINE
368 {
370  PVOID Key;
372  PCHAR FileName;
373  DWORD Address;
375 
376 typedef struct _IMAGEHLP_LINEW
377 {
379  PVOID Key;
381  PWSTR FileName;
382  DWORD Address;
384 #endif
385 
386 typedef struct _IMAGEHLP_LINE64
387 {
389  PVOID Key;
391  PCHAR FileName;
394 
395 typedef struct _IMAGEHLP_LINEW64
396 {
398  PVOID Key;
400  PWSTR FileName;
403 
404 typedef struct _SOURCEFILE
405 {
407  PCHAR FileName;
409 
410 typedef struct _SOURCEFILEW
411 {
413  PWSTR FileName;
415 
416 #define CBA_DEFERRED_SYMBOL_LOAD_START 0x00000001
417 #define CBA_DEFERRED_SYMBOL_LOAD_COMPLETE 0x00000002
418 #define CBA_DEFERRED_SYMBOL_LOAD_FAILURE 0x00000003
419 #define CBA_SYMBOLS_UNLOADED 0x00000004
420 #define CBA_DUPLICATE_SYMBOL 0x00000005
421 #define CBA_READ_MEMORY 0x00000006
422 #define CBA_DEFERRED_SYMBOL_LOAD_CANCEL 0x00000007
423 #define CBA_SET_OPTIONS 0x00000008
424 #define CBA_EVENT 0x00000010
425 #define CBA_DEFERRED_SYMBOL_LOAD_PARTIAL 0x00000020
426 #define CBA_DEBUG_INFO 0x10000000
427 
429 {
435 
436 enum
437 {
438  sevInfo = 0,
443 };
444 
445 #define EVENT_SRCSPEW_START 100
446 #define EVENT_SRCSPEW 100
447 #define EVENT_SRCSPEW_END 199
448 
449 typedef struct _IMAGEHLP_CBA_EVENT
450 {
456 
457 typedef struct _IMAGEHLP_CBA_EVENTW
458 {
464 
465 #if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
466 #define IMAGEHLP_DEFERRED_SYMBOL_LOAD IMAGEHLP_DEFERRED_SYMBOL_LOAD64
467 #define PIMAGEHLP_DEFERRED_SYMBOL_LOAD PIMAGEHLP_DEFERRED_SYMBOL_LOAD64
468 #else
469 typedef struct _IMAGEHLP_DEFERRED_SYMBOL_LOAD
470 {
473  DWORD CheckSum;
477  HANDLE hFile;
479 #endif
480 
482 {
485  DWORD CheckSum;
489  HANDLE hFile;
490  DWORD Flags;
492 
494 {
497  DWORD CheckSum;
499  WCHAR FileName[MAX_PATH + 1];
501  HANDLE hFile;
502  DWORD Flags;
504 
505 #if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
506 #define IMAGEHLP_DUPLICATE_SYMBOL IMAGEHLP_DUPLICATE_SYMBOL64
507 #define PIMAGEHLP_DUPLICATE_SYMBOL PIMAGEHLP_DUPLICATE_SYMBOL64
508 #else
510 {
516 #endif
517 
519 {
525 
526 #define SYMOPT_CASE_INSENSITIVE 0x00000001
527 #define SYMOPT_UNDNAME 0x00000002
528 #define SYMOPT_DEFERRED_LOADS 0x00000004
529 #define SYMOPT_NO_CPP 0x00000008
530 #define SYMOPT_LOAD_LINES 0x00000010
531 #define SYMOPT_OMAP_FIND_NEAREST 0x00000020
532 #define SYMOPT_LOAD_ANYTHING 0x00000040
533 #define SYMOPT_IGNORE_CVREC 0x00000080
534 #define SYMOPT_NO_UNQUALIFIED_LOADS 0x00000100
535 #define SYMOPT_FAIL_CRITICAL_ERRORS 0x00000200
536 #define SYMOPT_EXACT_SYMBOLS 0x00000400
537 #define SYMOPT_WILD_UNDERSCORE 0x00000800
538 #define SYMOPT_USE_DEFAULTS 0x00001000
539 #define SYMOPT_ALLOW_ABSOLUTE_SYMBOLS 0x00000800
540 #define SYMOPT_IGNORE_NT_SYMPATH 0x00001000
541 #define SYMOPT_INCLUDE_32BIT_MODULES 0x00002000
542 #define SYMOPT_PUBLICS_ONLY 0x00004000
543 #define SYMOPT_NO_PUBLICS 0x00008000
544 #define SYMOPT_AUTO_PUBLICS 0x00010000
545 #define SYMOPT_NO_IMAGE_SEARCH 0x00020000
546 #define SYMOPT_SECURE 0x00040000
547 #define SYMOPT_NO_PROMPTS 0x00080000
548 #define SYMOPT_OVERWRITE 0x00100000
549 #define SYMOPT_IGNORE_IMAGEDIR 0x00200000
550 #define SYMOPT_FLAT_DIRECTORY 0x00400000
551 #define SYMOPT_FAVOR_COMPRESSED 0x00800000
552 #define SYMOPT_ALLOW_ZERO_ADDRESS 0x01000000
553 #define SYMOPT_DISABLE_SYMSRV_AUTODETECT 0x02000000
554 #define SYMOPT_READONLY_CACHE 0x04000000
555 #define SYMOPT_SYMPATH_LAST 0x08000000
556 #define SYMOPT_DEBUG 0x80000000
557 
558 typedef struct _IMAGEHLP_STACK_FRAME
559 {
566  ULONG64 Params[4];
567  ULONG64 Reserved[5];
568  BOOL Virtual;
571 
573 
574 #define DBHHEADER_DEBUGDIRS 0x1
575 typedef struct _DBGHELP_MODLOAD_DATA
576 {
577  DWORD ssize;
578  DWORD ssig;
579  PVOID data;
580  DWORD size;
581  DWORD flags;
583 
584 /*************************
585  * MiniDUMP *
586  *************************/
587 
588 #include <pshpack4.h>
589 /* DebugHelp */
590 
591 #define MINIDUMP_SIGNATURE 0x504D444D /* 'MDMP' */
592 #define MINIDUMP_VERSION (42899)
593 
594 typedef DWORD RVA;
595 typedef ULONG64 RVA64;
596 
597 typedef enum _MINIDUMP_TYPE
598 {
599  MiniDumpNormal = 0x0000,
614 } MINIDUMP_TYPE;
615 
617 {
625 
626 typedef struct _MINIDUMP_THREAD_CALLBACK
627 {
628  ULONG ThreadId;
635 
636 typedef struct _MINIDUMP_THREAD_EX_CALLBACK
637 {
638  ULONG ThreadId;
647 
649 {
650  ULONG ThreadId;
652 
653 typedef enum _THREAD_WRITE_FLAGS
654 {
663 
664 typedef struct _MINIDUMP_MODULE_CALLBACK
665 {
669  ULONG CheckSum;
672  PVOID CvRecord;
677 
678 typedef struct _MINIDUMP_INCLUDE_MODULE_CALLBACK
679 {
682 
683 typedef enum _MODULE_WRITE_FLAGS
684 {
693 
694 typedef struct _MINIDUMP_CALLBACK_INPUT
695 {
699  union
700  {
706  } DUMMYUNIONNAME;
708 
709 typedef struct _MINIDUMP_CALLBACK_OUTPUT
710 {
711  union
712  {
715  struct
716  {
719  } DUMMYSTRUCTNAME;
720  } DUMMYUNIONNAME;
722 
723 typedef BOOL
725  _Inout_ PVOID,
728 
729 typedef struct _MINIDUMP_CALLBACK_INFORMATION
730 {
732  void* CallbackParam;
734 
736 {
740 
742 {
746 
747 typedef struct _MINIDUMP_DIRECTORY
748 {
752 
753 typedef struct _MINIDUMP_EXCEPTION
754 {
763 
765 {
770 
772 {
778 
779 typedef struct _MINIDUMP_HEADER
780 {
786  union
787  {
790  } DUMMYUNIONNAME;
793 
795 {
799 
800 typedef struct _MINIDUMP_MEMORY_LIST
801 {
803  MINIDUMP_MEMORY_DESCRIPTOR MemoryRanges[1]; /* FIXME: 0-sized array not supported */
805 
806 #define MINIDUMP_MISC1_PROCESS_ID 0x00000001
807 #define MINIDUMP_MISC1_PROCESS_TIMES 0x00000002
808 
809 typedef struct _MINIDUMP_MISC_INFO
810 {
818 
819 typedef struct _MINIDUMP_MODULE
820 {
832 
833 typedef struct _MINIDUMP_MODULE_LIST
834 {
836  MINIDUMP_MODULE Modules[1]; /* FIXME: 0-sized array not supported */
838 
839 typedef struct _MINIDUMP_STRING
840 {
842  WCHAR Buffer[1]; /* FIXME: O-sized array not supported */
844 
845 typedef struct _MINIDUMP_SYSTEM_INFO
846 {
850  union
851  {
853  struct
854  {
857  } DUMMYSTRUCTNAME;
858  } DUMMYUNIONNAME;
859 
864 
866  union
867  {
869  struct
870  {
873  } DUMMYSTRUCTNAME;
874  } DUMMYUNIONNAME1;
876  {
877  struct
878  {
883  } X86CpuInfo;
884  struct
885  {
887  } OtherCpuInfo;
888  } Cpu;
889 
891 
892 typedef struct _MINIDUMP_THREAD
893 {
902 
903 typedef struct _MINIDUMP_THREAD_LIST
904 {
906  MINIDUMP_THREAD Threads[1]; /* FIXME: no support of 0 sized array */
908 
909 typedef struct _MINIDUMP_USER_STREAM
910 {
913  void* Buffer;
915 
917 {
921 
923 {
942 
945 
946 BOOL
947 WINAPI
949  _In_ HANDLE,
950  _In_ DWORD,
951  _In_ HANDLE,
956 
957 BOOL
958 WINAPI
960  _In_ PVOID,
961  _In_ ULONG,
964  _Out_opt_ ULONG*);
965 
966 #include <poppack.h>
967 
968 /*************************
969  * MODULE handling *
970  *************************/
971 
972 /* flags for SymLoadModuleEx */
973 #define SLMFLAG_VIRTUAL 0x1
974 #define SLMFLAG_NO_SYMBOLS 0x4
975 
976 typedef BOOL
978  _In_ PCSTR,
979  _In_ DWORD64,
980  _In_ ULONG,
981  _In_opt_ PVOID);
982 
983 BOOL
984 WINAPI
986  _In_ HANDLE,
988  _In_opt_ PVOID);
989 
990 typedef BOOL
992  _In_ PCWSTR,
993  _In_ DWORD64,
994  _In_ ULONG,
995  _In_opt_ PVOID);
996 
997 BOOL
998 WINAPI
1000  _In_ HANDLE,
1002  _In_opt_ PVOID);
1003 
1004 typedef BOOL
1006  _In_ PCSTR,
1007  _In_ DWORD64,
1008  _In_opt_ PVOID);
1009 
1010 BOOL
1011 WINAPI
1013  _In_ HANDLE,
1015  _In_opt_ PVOID);
1016 
1017 typedef BOOL
1019  _In_ PCWSTR,
1020  _In_ DWORD64,
1021  _In_opt_ PVOID);
1022 
1023 BOOL
1024 WINAPI
1026  _In_ HANDLE,
1028  _In_opt_ PVOID);
1029 
1030 BOOL
1031 WINAPI
1033  _In_ HANDLE,
1034  _In_ DWORD64,
1036 
1037 BOOL
1038 WINAPI
1040  _In_ HANDLE,
1041  _In_ DWORD64,
1043 
1045 
1046 DWORD64
1047 WINAPI
1049  _In_ HANDLE,
1050  _In_opt_ HANDLE,
1051  _In_opt_ PCSTR,
1052  _In_opt_ PCSTR,
1053  _In_ DWORD64,
1054  _In_ DWORD);
1055 
1056 DWORD64
1057 WINAPI
1059  _In_ HANDLE,
1060  _In_opt_ HANDLE,
1061  _In_opt_ PCSTR,
1062  _In_opt_ PCSTR,
1063  _In_ DWORD64,
1064  _In_ DWORD,
1066  _In_opt_ DWORD);
1067 
1068 DWORD64
1069 WINAPI
1071  _In_ HANDLE,
1072  _In_opt_ HANDLE,
1073  _In_opt_ PCWSTR,
1074  _In_opt_ PCWSTR,
1075  _In_ DWORD64,
1076  _In_ DWORD,
1078  _In_opt_ DWORD);
1079 
1081 
1082 /*************************
1083  * Symbol Handling *
1084  *************************/
1085 
1086 #define IMAGEHLP_SYMBOL_INFO_VALUEPRESENT 1
1087 #define IMAGEHLP_SYMBOL_INFO_REGISTER SYMF_REGISTER /* 0x08 */
1088 #define IMAGEHLP_SYMBOL_INFO_REGRELATIVE SYMF_REGREL /* 0x10 */
1089 #define IMAGEHLP_SYMBOL_INFO_FRAMERELATIVE SYMF_FRAMEREL /* 0x20 */
1090 #define IMAGEHLP_SYMBOL_INFO_PARAMETER SYMF_PARAMETER /* 0x40 */
1091 #define IMAGEHLP_SYMBOL_INFO_LOCAL SYMF_LOCAL /* 0x80 */
1092 #define IMAGEHLP_SYMBOL_INFO_CONSTANT SYMF_CONSTANT /* 0x100 */
1093 #define IMAGEHLP_SYMBOL_FUNCTION SYMF_FUNCTION /* 0x800 */
1094 
1095 #define SYMFLAG_VALUEPRESENT 0x00000001
1096 #define SYMFLAG_REGISTER 0x00000008
1097 #define SYMFLAG_REGREL 0x00000010
1098 #define SYMFLAG_FRAMEREL 0x00000020
1099 #define SYMFLAG_PARAMETER 0x00000040
1100 #define SYMFLAG_LOCAL 0x00000080
1101 #define SYMFLAG_CONSTANT 0x00000100
1102 #define SYMFLAG_EXPORT 0x00000200
1103 #define SYMFLAG_FORWARDER 0x00000400
1104 #define SYMFLAG_FUNCTION 0x00000800
1105 #define SYMFLAG_VIRTUAL 0x00001000
1106 #define SYMFLAG_THUNK 0x00002000
1107 #define SYMFLAG_TLSREL 0x00004000
1108 #define SYMFLAG_SLOT 0x00008000
1109 #define SYMFLAG_ILREL 0x00010000
1110 #define SYMFLAG_METADATA 0x00020000
1111 #define SYMFLAG_CLR_TOKEN 0x00040000
1112 #define SYMFLAG_NULL 0x00080000
1113 #define SYMFLAG_FUNC_NO_RETURN 0x00100000
1114 #define SYMFLAG_SYNTHETIC_ZEROBASE 0x00200000
1115 #define SYMFLAG_PUBLIC_CODE 0x00400000
1116 
1117 #define MAX_SYM_NAME 2000
1118 
1119 typedef struct _SYMBOL_INFO
1120 {
1122  ULONG TypeIndex;
1123  ULONG64 Reserved[2];
1124  ULONG Index;
1125  ULONG Size;
1126  ULONG64 ModBase;
1127  ULONG Flags;
1128  ULONG64 Value;
1129  ULONG64 Address;
1130  ULONG Register;
1131  ULONG Scope;
1132  ULONG Tag;
1133  ULONG NameLen;
1134  ULONG MaxNameLen;
1135  CHAR Name[1];
1137 
1138 typedef struct _SYMBOL_INFOW
1139 {
1141  ULONG TypeIndex;
1142  ULONG64 Reserved[2];
1143  ULONG Index;
1144  ULONG Size;
1145  ULONG64 ModBase;
1146  ULONG Flags;
1147  ULONG64 Value;
1148  ULONG64 Address;
1149  ULONG Register;
1150  ULONG Scope;
1151  ULONG Tag;
1152  ULONG NameLen;
1153  ULONG MaxNameLen;
1154  WCHAR Name[1];
1156 
1157 typedef struct _SYMBOL_INFO_PACKAGE
1158 {
1162 
1164 {
1168 
1170 {
1199 
1200 #define IMAGEHLP_GET_TYPE_INFO_UNCACHED 0x00000001
1201 #define IMAGEHLP_GET_TYPE_INFO_CHILDREN 0x00000002
1203 {
1223 
1224 typedef struct _TI_FINDCHILDREN_PARAMS
1225 {
1226  ULONG Count;
1227  ULONG Start;
1228  ULONG ChildId[1];
1230 
1231 #define UNDNAME_COMPLETE (0x0000)
1232 #define UNDNAME_NO_LEADING_UNDERSCORES (0x0001)
1233 #define UNDNAME_NO_MS_KEYWORDS (0x0002)
1234 #define UNDNAME_NO_FUNCTION_RETURNS (0x0004)
1235 #define UNDNAME_NO_ALLOCATION_MODEL (0x0008)
1236 #define UNDNAME_NO_ALLOCATION_LANGUAGE (0x0010)
1237 #define UNDNAME_NO_MS_THISTYPE (0x0020)
1238 #define UNDNAME_NO_CV_THISTYPE (0x0040)
1239 #define UNDNAME_NO_THISTYPE (0x0060)
1240 #define UNDNAME_NO_ACCESS_SPECIFIERS (0x0080)
1241 #define UNDNAME_NO_THROW_SIGNATURES (0x0100)
1242 #define UNDNAME_NO_MEMBER_TYPE (0x0200)
1243 #define UNDNAME_NO_RETURN_UDT_MODEL (0x0400)
1244 #define UNDNAME_32_BIT_DECODE (0x0800)
1245 #define UNDNAME_NAME_ONLY (0x1000)
1246 #define UNDNAME_NO_ARGUMENTS (0x2000)
1247 #define UNDNAME_NO_SPECIAL_SYMS (0x4000)
1248 
1249 #define SYMSEARCH_MASKOBJS 0x01
1250 #define SYMSEARCH_RECURSE 0x02
1251 #define SYMSEARCH_GLOBALSONLY 0x04
1252 
1253 BOOL
1254 WINAPI
1256  _In_ HANDLE,
1257  _In_ DWORD64,
1258  _In_ ULONG,
1260  _Out_ PVOID);
1261 
1262 BOOL
1263 WINAPI
1265  _In_ HANDLE,
1266  _In_ DWORD64,
1268 
1269 typedef BOOL
1272  _In_ ULONG,
1273  _In_opt_ PVOID);
1274 
1275 typedef BOOL
1278  _In_ ULONG,
1279  _In_opt_ PVOID);
1280 
1281 BOOL
1282 WINAPI
1283 SymEnumTypes(
1284  _In_ HANDLE,
1285  _In_ ULONG64,
1287  _In_opt_ PVOID);
1288 
1289 BOOL
1290 WINAPI
1292  _In_ HANDLE,
1293  _In_ ULONG64,
1295  _In_opt_ PVOID);
1296 
1297 BOOL
1298 WINAPI
1299 SymFromAddr(
1300  _In_ HANDLE,
1301  _In_ DWORD64,
1302  _Out_opt_ DWORD64*,
1303  _Inout_ SYMBOL_INFO*);
1304 
1305 BOOL
1306 WINAPI
1307 SymFromAddrW(
1308  _In_ HANDLE,
1309  _In_ DWORD64,
1310  _Out_opt_ DWORD64*,
1312 
1313 BOOL
1314 WINAPI
1315 SymFromToken(
1316  _In_ HANDLE,
1317  _In_ DWORD64,
1318  _In_ DWORD,
1320 
1321 BOOL
1322 WINAPI
1324  _In_ HANDLE,
1325  _In_ DWORD64,
1326  _In_ DWORD,
1328 
1331 
1332 BOOL
1333 WINAPI
1335  _In_ HANDLE,
1336  _In_ DWORD64,
1339 
1340 BOOL
1341 WINAPI
1343  _In_ HANDLE,
1344  _In_ PCSTR,
1346 
1347 BOOL
1348 WINAPI
1350  _In_ HANDLE,
1351  _In_ ULONG64,
1352  _In_ PCSTR,
1354 
1355 BOOL
1356 WINAPI
1358  _In_ HANDLE,
1359  _In_ ULONG64,
1360  _In_ PCWSTR,
1362 
1367 
1368 BOOL
1369 WINAPI
1370 SymEnumSym(
1371  _In_ HANDLE,
1372  _In_ ULONG64,
1374  _In_opt_ PVOID);
1375 
1376 BOOL
1377 WINAPI
1379  _In_ HANDLE,
1380  _In_ ULONG64,
1381  _In_opt_ PCSTR,
1383  _In_opt_ PVOID);
1384 
1385 BOOL
1386 WINAPI
1388  _In_ HANDLE,
1389  _In_ ULONG64,
1390  _In_opt_ PCWSTR,
1392  _In_opt_ PVOID);
1393 
1394 typedef BOOL
1396  _In_ PCSTR,
1397  _In_ DWORD64,
1398  _In_ ULONG,
1399  _In_opt_ PVOID);
1400 
1401 typedef BOOL
1403  _In_ PCWSTR,
1404  _In_ DWORD64,
1405  _In_ ULONG,
1406  _In_opt_ PVOID);
1407 
1408 BOOL
1409 WINAPI
1411  _In_ HANDLE,
1412  _In_ ULONG64,
1414  _In_opt_ PVOID);
1415 
1416 BOOL
1417 WINAPI
1419  _In_ HANDLE,
1420  _In_ ULONG64,
1422  _In_opt_ PVOID);
1423 
1424 BOOL
1425 WINAPI
1427  _In_ HANDLE,
1428  _In_ DWORD64,
1430  _In_opt_ PVOID);
1431 
1432 BOOL
1433 WINAPI
1435  _In_ HANDLE,
1436  _In_ DWORD64,
1438  _In_opt_ PVOID);
1439 
1440 typedef BOOL
1442  _In_ HANDLE,
1443  _In_ ULONG,
1444  _In_opt_ ULONG64,
1445  _In_opt_ ULONG64);
1446 
1447 BOOL
1448 WINAPI
1450  _In_ HANDLE,
1452  _In_ ULONG64);
1453 
1454 BOOL
1455 WINAPI
1457  _In_ HANDLE,
1459  _In_ ULONG64);
1460 
1461 BOOL
1462 WINAPI
1463 SymUnDName64(
1465  _Out_writes_(UnDecNameLength) PSTR,
1466  _In_ DWORD UnDecNameLength);
1467 
1471 
1472 BOOL
1473 WINAPI
1474 SymSearch(
1475  _In_ HANDLE,
1476  _In_ ULONG64,
1477  _In_opt_ DWORD,
1478  _In_opt_ DWORD,
1479  _In_opt_ PCSTR,
1480  _In_opt_ DWORD64,
1482  _In_opt_ PVOID,
1483  _In_ DWORD);
1484 
1485 BOOL
1486 WINAPI
1487 SymSearchW(
1488  _In_ HANDLE,
1489  _In_ ULONG64,
1490  _In_opt_ DWORD,
1491  _In_opt_ DWORD,
1492  _In_opt_ PCWSTR,
1493  _In_opt_ DWORD64,
1495  _In_opt_ PVOID,
1496  _In_ DWORD);
1497 
1498 DWORD
1499 WINAPI
1501  _In_ PCSTR,
1502  _Out_writes_(maxStringLength) PSTR,
1503  _In_ DWORD maxStringLength,
1504  _In_ DWORD);
1505 
1506 DWORD
1507 WINAPI
1509  _In_ PCWSTR,
1510  _Out_writes_(maxStringLength) PWSTR,
1511  _In_ DWORD maxStringLength,
1512  _In_ DWORD);
1513 
1514 BOOL
1515 WINAPI
1516 SymGetScope(
1517  _In_ HANDLE,
1518  _In_ ULONG64,
1519  _In_ DWORD,
1521 
1522 BOOL
1523 WINAPI
1524 SymGetScopeW(
1525  _In_ HANDLE,
1526  _In_ ULONG64,
1527  _In_ DWORD,
1529 
1530 BOOL
1531 WINAPI
1532 SymFromIndex(
1533  _In_ HANDLE,
1534  _In_ ULONG64,
1535  _In_ DWORD,
1537 
1538 BOOL
1539 WINAPI
1541  _In_ HANDLE,
1542  _In_ ULONG64,
1543  _In_ DWORD,
1545 
1546 BOOL
1547 WINAPI
1548 SymAddSymbol(
1549  _In_ HANDLE,
1550  _In_ ULONG64,
1551  _In_ PCSTR,
1552  _In_ DWORD64,
1553  _In_ DWORD,
1554  _In_ DWORD);
1555 
1556 BOOL
1557 WINAPI
1559  _In_ HANDLE,
1560  _In_ ULONG64,
1561  _In_ PCWSTR,
1562  _In_ DWORD64,
1563  _In_ DWORD,
1564  _In_ DWORD);
1565 
1566 BOOL
1567 WINAPI
1569  _In_ HANDLE,
1570  _In_ ULONG64,
1571  _In_opt_ PCSTR,
1572  _In_ DWORD64,
1573  _In_ DWORD);
1574 
1575 BOOL
1576 WINAPI
1578  _In_ HANDLE,
1579  _In_ ULONG64,
1580  _In_opt_ PCWSTR,
1581  _In_ DWORD64,
1582  _In_ DWORD);
1583 
1584 /*************************
1585  * Source Files *
1586  *************************/
1587 
1588 typedef BOOL
1590  _In_ PSOURCEFILE,
1591  _In_opt_ PVOID);
1592 
1593 typedef BOOL
1596  _In_opt_ PVOID);
1597 
1598 BOOL
1599 WINAPI
1601  _In_ HANDLE,
1602  _In_ ULONG64,
1603  _In_opt_ PCSTR,
1605  _In_opt_ PVOID);
1606 
1607 BOOL
1608 WINAPI
1610  _In_ HANDLE,
1611  _In_ ULONG64,
1612  _In_opt_ PCWSTR,
1614  _In_opt_ PVOID);
1615 
1616 BOOL
1617 WINAPI
1619  _In_ HANDLE,
1620  _In_ DWORD64,
1621  _Out_ PDWORD,
1623 
1624 BOOL
1625 WINAPI
1627  _In_ HANDLE,
1628  _In_ DWORD64,
1629  _Out_ PDWORD,
1631 
1636 
1637 BOOL
1638 WINAPI
1640  _In_ HANDLE,
1641  _In_opt_ PCSTR,
1642  _In_opt_ PCSTR,
1643  _In_ DWORD,
1644  _Out_ PLONG,
1646 
1647 BOOL
1648 WINAPI
1650  _In_ HANDLE,
1651  _In_opt_ PCWSTR,
1652  _In_opt_ PCWSTR,
1653  _In_ DWORD,
1654  _Out_ PLONG,
1656 
1657 ULONG
1658 WINAPI
1660  _In_ HANDLE,
1661  _In_opt_ PCSTR,
1662  _In_ PCSTR,
1663  _Out_writes_(BufferLines) PDWORD64,
1664  _In_ ULONG BufferLines);
1665 
1666 BOOL
1667 WINAPI
1669  _In_ HANDLE,
1670  _In_ ULONG64,
1671  _In_opt_ PCSTR,
1672  _In_ PCSTR,
1674  _In_ DWORD Size);
1675 
1676 BOOL
1677 WINAPI
1679  _In_ HANDLE,
1680  _In_ ULONG64,
1681  _In_opt_ PCWSTR,
1682  _In_ PCWSTR,
1684  _In_ DWORD Size);
1685 
1686 BOOL
1687 WINAPI
1689  _In_ HANDLE,
1690  _In_ ULONG64,
1691  _In_ PCSTR,
1692  _Outptr_ PVOID*,
1693  _Out_ DWORD*);
1694 
1695 BOOL
1696 WINAPI
1698  _In_ HANDLE,
1699  _In_ ULONG64,
1700  _In_ PCWSTR,
1701  _Outptr_ PVOID*,
1702  _Out_ DWORD*);
1703 
1704 BOOL
1705 WINAPI
1707  _In_ HANDLE,
1708  _In_ PVOID,
1709  _In_opt_ PCSTR,
1711  _In_ DWORD Size);
1712 
1713 BOOL
1714 WINAPI
1716  _In_ HANDLE,
1717  _In_ PVOID,
1718  _In_opt_ PCWSTR,
1720  _In_ DWORD Size);
1721 
1722 BOOL
1723 WINAPI
1725  _In_ HANDLE,
1726  _In_ PVOID,
1727  _In_opt_ PCSTR,
1728  _In_ PCSTR,
1730  _In_ DWORD Size);
1731 
1732 BOOL
1733 WINAPI
1735  _In_ HANDLE,
1736  _In_ PVOID,
1737  _In_opt_ PCWSTR,
1738  _In_ PCWSTR,
1740  _In_ DWORD Size);
1741 
1742 typedef struct _SRCCODEINFO
1743 {
1745  PVOID Key;
1746  DWORD64 ModBase;
1747  CHAR Obj[MAX_PATH+1];
1748  CHAR FileName[MAX_PATH+1];
1749  DWORD LineNumber;
1750  DWORD64 Address;
1752 
1753 typedef struct _SRCCODEINFOW
1754 {
1756  PVOID Key;
1757  DWORD64 ModBase;
1758  WCHAR Obj[MAX_PATH+1];
1759  WCHAR FileName[MAX_PATH+1];
1760  DWORD LineNumber;
1761  DWORD64 Address;
1763 
1764 typedef BOOL
1767  _In_opt_ PVOID);
1768 
1769 typedef BOOL
1772  _In_opt_ PVOID);
1773 
1774 BOOL
1775 WINAPI
1776 SymEnumLines(
1777  _In_ HANDLE,
1778  _In_ ULONG64,
1779  _In_opt_ PCSTR,
1780  _In_opt_ PCSTR,
1782  _In_opt_ PVOID);
1783 
1784 BOOL
1785 WINAPI
1787  _In_ HANDLE,
1788  _In_ ULONG64,
1789  _In_opt_ PCWSTR,
1790  _In_opt_ PCWSTR,
1792  _In_opt_ PVOID);
1793 
1794 BOOL
1795 WINAPI
1797  _In_ HANDLE,
1798  _In_ ULONG64,
1799  _In_opt_ PCSTR,
1800  _In_opt_ PCSTR,
1801  _In_opt_ DWORD,
1802  _In_ DWORD,
1804  _In_opt_ PVOID);
1805 
1806 BOOL
1807 WINAPI
1809  _In_ HANDLE,
1810  _In_ ULONG64,
1811  _In_opt_ PCWSTR,
1812  _In_opt_ PCWSTR,
1813  _In_opt_ DWORD,
1814  _In_ DWORD,
1816  _In_opt_ PVOID);
1817 
1818 /*************************
1819  * File & image handling *
1820  *************************/
1821 
1825 
1826 HANDLE
1827 WINAPI
1829  _In_ PCSTR,
1830  _In_ PCSTR,
1831  _Out_writes_(MAX_PATH + 1) PSTR);
1832 
1833 typedef BOOL
1835  _In_ HANDLE,
1836  _In_ PCSTR,
1837  _In_ PVOID);
1838 
1839 typedef BOOL
1841  _In_ HANDLE,
1842  _In_ PCWSTR,
1843  _In_ PVOID);
1844 
1845 HANDLE
1846 WINAPI
1848  _In_ PCSTR,
1849  _In_ PCSTR,
1850  _Out_writes_(MAX_PATH + 1) PSTR,
1852  _In_opt_ PVOID);
1853 
1854 HANDLE
1855 WINAPI
1857  _In_ PCWSTR,
1858  _In_ PCWSTR,
1861  _In_opt_ PVOID);
1862 
1863 HANDLE
1864 WINAPI
1866  _In_ HANDLE,
1867  _In_ PCSTR,
1868  _Out_writes_(MAX_PATH + 1) PSTR,
1870  _In_opt_ PVOID);
1871 
1872 HANDLE
1873 WINAPI
1875  _In_ HANDLE,
1876  _In_ PCWSTR,
1879  _In_opt_ PVOID);
1880 
1881 typedef BOOL
1883  _In_ PCSTR,
1884  _In_ PVOID);
1885 
1886 typedef BOOL
1888  _In_ PCWSTR,
1889  _In_ PVOID);
1890 
1893 
1894 BOOL
1895 WINAPI
1897  _In_ HANDLE,
1898  _In_opt_ PCSTR,
1899  _In_ PCSTR,
1900  _In_opt_ PVOID,
1901  _In_ DWORD,
1902  _In_ DWORD,
1903  _In_ DWORD,
1904  _Out_writes_(MAX_PATH + 1) PSTR,
1906  _In_opt_ PVOID);
1907 
1908 BOOL
1909 WINAPI
1911  _In_ HANDLE,
1912  _In_opt_ PCWSTR,
1913  _In_ PCWSTR,
1914  _In_opt_ PVOID,
1915  _In_ DWORD,
1916  _In_ DWORD,
1917  _In_ DWORD,
1920  _In_opt_ PVOID);
1921 
1922 HANDLE
1923 WINAPI
1925  _In_ PCSTR,
1926  _In_ PCSTR,
1927  _Out_writes_(MAX_PATH + 1) PSTR);
1928 
1929 typedef BOOL
1931  _In_ HANDLE,
1932  _In_ PCSTR,
1933  _In_opt_ PVOID);
1934 
1935 typedef BOOL
1937  _In_ HANDLE,
1938  _In_ PCWSTR,
1939  _In_opt_ PVOID);
1940 
1941 HANDLE
1942 WINAPI
1944  _In_ PCSTR,
1945  _In_ PCSTR,
1946  _Out_writes_(MAX_PATH + 1) PSTR,
1948  _In_opt_ PVOID);
1949 
1950 HANDLE
1951 WINAPI
1953  _In_ PCWSTR,
1954  _In_ PCWSTR,
1957  _In_opt_ PVOID);
1958 
1959 HANDLE
1960 WINAPI
1962  _In_ HANDLE,
1963  _In_ PCSTR,
1964  _Out_writes_(MAX_PATH + 1) PSTR,
1966  _In_ PVOID);
1967 
1968 HANDLE
1969 WINAPI
1971  _In_ HANDLE,
1972  _In_ PCWSTR,
1975  _In_ PVOID);
1976 
1978 
1979 PVOID
1980 WINAPI
1982  _In_ PVOID,
1983  _In_ BOOLEAN,
1984  _In_ USHORT,
1985  _Out_ PULONG,
1987 
1988 PVOID
1989 WINAPI
1991  _In_ PVOID,
1992  _In_ BOOLEAN,
1993  _In_ USHORT,
1994  _Out_ PULONG);
1995 
1997 WINAPI
2000  _In_ PVOID,
2001  _In_ ULONG);
2002 
2003 PVOID
2004 WINAPI
2005 ImageRvaToVa(
2007  _In_ PVOID,
2008  _In_ ULONG,
2010 
2011 BOOL
2012 WINAPI
2014  _In_ HANDLE,
2015  _Out_writes_(SearchPathLength) PSTR,
2016  _In_ DWORD SearchPathLength);
2017 
2018 BOOL
2019 WINAPI
2021  _In_ HANDLE,
2022  _Out_writes_(SearchPathLength) PWSTR,
2023  _In_ DWORD SearchPathLength);
2024 
2029 
2030 BOOL
2031 WINAPI
2033  _In_ PCSTR,
2034  _In_ PCSTR,
2035  _Out_writes_(MAX_PATH + 1) PSTR);
2036 
2037 BOOL
2038 WINAPI
2040  _In_ PCWSTR,
2041  _In_ PCWSTR,
2042  _Out_writes_(MAX_PATH + 1) PWSTR);
2043 
2044 typedef BOOL
2046  _In_ PCSTR,
2047  _In_opt_ PVOID);
2048 
2049 typedef BOOL
2051  _In_ PCWSTR,
2052  _In_opt_ PVOID);
2053 
2054 BOOL
2055 WINAPI
2056 EnumDirTree(
2057  _In_opt_ HANDLE,
2058  _In_ PCSTR,
2059  _In_ PCSTR,
2062  _In_opt_ PVOID);
2063 
2064 BOOL
2065 WINAPI
2066 EnumDirTreeW(
2067  _In_opt_ HANDLE,
2068  _In_ PCWSTR,
2069  _In_ PCWSTR,
2072  _In_opt_ PVOID);
2073 
2074 BOOL
2075 WINAPI
2077  _In_ PCSTR,
2078  _In_ PCSTR,
2079  _Outptr_opt_ PSTR*,
2080  _Outptr_opt_ PSTR*);
2081 
2082 BOOL
2083 WINAPI
2085  _In_ PCWSTR,
2086  _In_ PCWSTR,
2088  _Outptr_opt_ PWSTR*);
2089 
2092 
2093 PCHAR
2094 WINAPI
2096  _In_ DWORD,
2098  _In_ size_t size);
2099 
2100 PWSTR
2101 WINAPI
2103  _In_ DWORD,
2105  _In_ size_t size);
2106 
2107 #define hdBase 0
2108 #define hdSym 1
2109 #define hdSrc 2
2110 #define hdMax 3
2111 
2112 /*************************
2113  * Context management *
2114  *************************/
2115 
2116 BOOL
2117 WINAPI
2119  _In_ HANDLE,
2122 
2123 
2124 /*************************
2125  * Stack management *
2126  *************************/
2127 
2128 #if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
2129 #define KDHELP KDHELP64
2130 #define PKDHELP PKDHELP64
2131 #else
2132 typedef struct _KDHELP
2133 {
2141 } KDHELP, *PKDHELP;
2142 #endif
2143 
2144 typedef struct _KDHELP64
2145 {
2146  DWORD64 Thread;
2154  DWORD64 Reserved[8];
2155 } KDHELP64, *PKDHELP64;
2156 
2157 #if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
2158 #define STACKFRAME STACKFRAME64
2159 #define LPSTACKFRAME LPSTACKFRAME64
2160 #else
2161 typedef struct _STACKFRAME
2162 {
2175 #endif
2176 
2177 typedef struct _STACKFRAME64
2178 {
2179  ADDRESS64 AddrPC;
2185  DWORD64 Params[4];
2186  BOOL Far;
2187  BOOL Virtual;
2188  DWORD64 Reserved[3];
2189  KDHELP64 KdHelp;
2191 
2192 typedef BOOL
2194  _In_ HANDLE,
2195  _In_ DWORD64,
2197  _In_ DWORD nSize,
2198  _Out_ PDWORD);
2199 
2200 typedef PVOID
2202  _In_ HANDLE,
2203  _In_ DWORD64);
2204 
2205 typedef DWORD64
2207  _In_ HANDLE,
2208  _In_ DWORD64);
2209 
2210 typedef DWORD64
2212  _In_ HANDLE,
2213  _In_ HANDLE,
2214  _In_ LPADDRESS64);
2215 
2216 BOOL
2217 WINAPI
2218 StackWalk64(
2219  _In_ DWORD,
2220  _In_ HANDLE,
2221  _In_ HANDLE,
2223  _Inout_ PVOID,
2228 
2230 
2231 typedef PVOID
2233  _In_ HANDLE,
2234  _In_ ULONG64,
2235  _In_ ULONG64);
2236 
2237 BOOL
2238 WINAPI
2240  _In_ HANDLE,
2242  _In_ ULONG64);
2243 
2244 /*************************
2245  * Version, global stuff *
2246  *************************/
2247 
2248 #define API_VERSION_NUMBER 9
2249 
2250 typedef struct API_VERSION
2251 {
2254  USHORT Revision;
2255  USHORT Reserved;
2257 
2260 
2262 {
2295 
2296 
2298 WINAPI
2300  _In_opt_ HANDLE,
2301  _In_ PCSTR,
2302  _In_opt_ PCSTR,
2303  _In_ ULONG);
2304 
2306 
2307 DWORD WINAPI SymGetOptions(void);
2309 
2311 
2312 BOOL
2313 IMAGEAPI
2316  _In_ PCSTR path);
2317 
2318 BOOL
2319 IMAGEAPI
2322  _In_ PCWSTR path);
2323 
2324 /*************************
2325  * Version, global stuff *
2326  *************************/
2327 
2339 
2340 #define SSRVOPT_CALLBACK 0x0001
2341 #define SSRVOPT_DWORD 0x0002
2342 #define SSRVOPT_DWORDPTR 0x0004
2343 #define SSRVOPT_GUIDPTR 0x0008
2344 #define SSRVOPT_OLDGUIDPTR 0x0010
2345 #define SSRVOPT_UNATTENDED 0x0020
2346 #define SSRVOPT_NOCOPY 0x0040
2347 #define SSRVOPT_PARENTWIN 0x0080
2348 #define SSRVOPT_PARAMTYPE 0x0100
2349 #define SSRVOPT_SECURE 0x0200
2350 #define SSRVOPT_TRACE 0x0400
2351 #define SSRVOPT_SETCONTEXT 0x0800
2352 #define SSRVOPT_PROXY 0x1000
2353 #define SSRVOPT_DOWNSTREAM_STORE 0x2000
2354 #define SSRVOPT_RESET ((ULONG_PTR)-1)
2355 
2356 #define SSRVACTION_TRACE 1
2357 #define SSRVACTION_QUERYCANCEL 2
2358 #define SSRVACTION_EVENT 3
2359 
2360 /* 32-bit functions */
2361 
2362 #if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
2363 
2364 #define PENUMLOADED_MODULES_CALLBACK PENUMLOADED_MODULES_CALLBACK64
2365 #define PFUNCTION_TABLE_ACCESS_ROUTINE PFUNCTION_TABLE_ACCESS_ROUTINE64
2366 #define PGET_MODULE_BASE_ROUTINE PGET_MODULE_BASE_ROUTINE64
2367 #define PREAD_PROCESS_MEMORY_ROUTINE PREAD_PROCESS_MEMORY_ROUTINE64
2368 #define PSYMBOL_FUNCENTRY_CALLBACK PSYMBOL_FUNCENTRY_CALLBACK64
2369 #define PSYMBOL_REGISTERED_CALLBACK PSYMBOL_REGISTERED_CALLBACK64
2370 #define PSYM_ENUMMODULES_CALLBACK PSYM_ENUMMODULES_CALLBACK64
2371 #define PSYM_ENUMSYMBOLS_CALLBACK PSYM_ENUMSYMBOLS_CALLBACK64
2372 #define PSYM_ENUMSYMBOLS_CALLBACKW PSYM_ENUMSYMBOLS_CALLBACKW64
2373 #define PTRANSLATE_ADDRESS_ROUTINE PTRANSLATE_ADDRESS_ROUTINE64
2374 
2375 #define EnumerateLoadedModules EnumerateLoadedModules64
2376 #define StackWalk StackWalk64
2377 #define SymEnumerateModules SymEnumerateModules64
2378 #define SymEnumerateSymbols SymEnumerateSymbols64
2379 #define SymEnumerateSymbolsW SymEnumerateSymbolsW64
2380 #define SymFunctionTableAccess SymFunctionTableAccess64
2381 #define SymGetLineFromAddr SymGetLineFromAddr64
2382 #define SymGetLineFromAddrW SymGetLineFromAddrW64
2383 #define SymGetLineFromName SymGetLineFromName64
2384 #define SymGetLineNext SymGetLineNext64
2385 #define SymGetLineNextW SymGetLineNextW64
2386 #define SymGetLinePrev SymGetLinePrev64
2387 #define SymGetLinePrevW SymGetLinePrevW64
2388 #define SymGetModuleBase SymGetModuleBase64
2389 #define SymGetModuleInfo SymGetModuleInfo64
2390 #define SymGetModuleInfoW SymGetModuleInfoW64
2391 #define SymGetSymFromAddr SymGetSymFromAddr64
2392 #define SymGetSymFromName SymGetSymFromName64
2393 #define SymGetSymNext SymGetSymNext64
2394 #define SymGetSymNextW SymGetSymNextW64
2395 #define SymGetSymPrev SymGetSymPrev64
2396 #define SymGetSymPrevW SymGetSymPrevW64
2397 #define SymLoadModule SymLoadModule64
2398 #define SymRegisterCallback SymRegisterCallback64
2399 #define SymRegisterFunctionEntryCallback SymRegisterFunctionEntryCallback64
2400 #define SymUnDName SymUnDName64
2401 #define SymUnloadModule SymUnloadModule64
2402 
2403 #else
2404 
2405 typedef BOOL
2407  _In_ PCSTR,
2408  _In_ ULONG,
2409  _In_ ULONG,
2410  _In_opt_ PVOID);
2411 
2412 typedef PVOID
2414  _In_ HANDLE,
2415  _In_ DWORD);
2416 
2417 typedef DWORD
2419  _In_ HANDLE,
2420  _In_ DWORD);
2421 
2422 typedef BOOL
2424  _In_ HANDLE,
2425  _In_ DWORD,
2427  _In_ DWORD nSize,
2428  _Out_ PDWORD);
2429 
2430 typedef BOOL
2432  _In_ PCSTR,
2433  _In_ ULONG,
2434  _In_opt_ PVOID);
2435 
2436 typedef BOOL
2438  _In_ PCSTR,
2439  _In_ ULONG,
2440  _In_ ULONG,
2441  _In_opt_ PVOID);
2442 
2443 typedef BOOL
2445  _In_ PCWSTR,
2446  _In_ ULONG,
2447  _In_ ULONG,
2448  _In_opt_ PVOID);
2449 
2450 typedef BOOL
2452  _In_ HANDLE,
2453  _In_ ULONG,
2454  _In_opt_ PVOID,
2455  _In_opt_ PVOID);
2456 
2457 typedef PVOID
2459  _In_ HANDLE,
2460  _In_ DWORD,
2461  _In_opt_ PVOID);
2462 
2463 typedef DWORD
2465  _In_ HANDLE,
2466  _In_ HANDLE,
2467  _Out_ LPADDRESS);
2468 
2469 BOOL
2470 WINAPI
2472  _In_ HANDLE,
2474  _In_opt_ PVOID);
2475 
2476 BOOL
2477 WINAPI
2478 StackWalk(
2479  _In_ DWORD,
2480  _In_ HANDLE,
2481  _In_ HANDLE,
2483  _Inout_ PVOID,
2488 
2489 BOOL
2490 WINAPI
2492  _In_ HANDLE,
2494  _In_opt_ PVOID);
2495 
2496 BOOL
2497 WINAPI
2499  _In_ HANDLE,
2500  _In_ ULONG,
2502  _In_opt_ PVOID);
2503 
2504 BOOL
2505 WINAPI
2507  _In_ HANDLE,
2508  _In_ ULONG,
2510  _In_opt_ PVOID);
2511 
2513 
2514 BOOL
2515 WINAPI
2517  _In_ HANDLE,
2518  _In_ DWORD,
2519  _Out_ PDWORD,
2521 
2522 BOOL
2523 WINAPI
2525  _In_ HANDLE,
2526  _In_ DWORD,
2527  _Out_ PDWORD,
2529 
2530 BOOL
2531 WINAPI
2533  _In_ HANDLE,
2534  _In_opt_ PCSTR,
2535  _In_opt_ PCSTR,
2536  _In_ DWORD,
2537  _Out_ PLONG,
2539 
2545 
2546 BOOL
2547 WINAPI
2549  _In_ HANDLE,
2550  _In_ DWORD,
2552 
2553 BOOL
2554 WINAPI
2556  _In_ HANDLE,
2557  _In_ DWORD,
2559 
2560 BOOL
2561 WINAPI
2563  _In_ HANDLE,
2564  _In_ DWORD,
2565  _Out_opt_ PDWORD,
2567 
2568 BOOL
2569 WINAPI
2571  _In_ HANDLE,
2572  _In_ PCSTR,
2574 
2579 
2580 DWORD
2581 WINAPI
2583  _In_ HANDLE,
2584  _In_opt_ HANDLE,
2585  _In_opt_ PCSTR,
2586  _In_opt_ PCSTR,
2587  _In_ DWORD,
2588  _In_ DWORD);
2589 
2590 BOOL
2591 WINAPI
2593  _In_ HANDLE,
2595  _In_opt_ PVOID);
2596 
2597 BOOL
2598 WINAPI
2600  _In_ HANDLE,
2602  _In_opt_ PVOID);
2603 
2605 
2606 BOOL
2607 WINAPI
2608 SymUnDName(
2610  _Out_writes_(UnDecNameLength) PSTR,
2611  _In_ DWORD UnDecNameLength);
2612 
2614 
2615 #endif
2616 
2617 #ifdef __cplusplus
2618 } /* extern "C" */
2619 #endif /* defined(__cplusplus) */
2620 
2621 #endif /* __WINE_DBGHELP_H */
_THREAD_WRITE_FLAGS
Definition: compat.h:785
BOOL WINAPI SymGetSourceFileFromToken(_In_ HANDLE, _In_ PVOID, _In_opt_ PCSTR, _Out_writes_(Size) PSTR, _In_ DWORD Size)
HANDLE WINAPI FindExecutableImage(_In_ PCSTR, _In_ PCSTR, _Out_writes_(MAX_PATH+1) PSTR)
DWORD64 Address
Definition: compat.h:1137
BOOL WINAPI SymGetLineFromAddrW64(_In_ HANDLE, _In_ DWORD64, _Out_ PDWORD, _Out_ PIMAGEHLP_LINEW64)
BOOL WINAPI EnumerateLoadedModules64(_In_ HANDLE, _In_ PENUMLOADED_MODULES_CALLBACK64, _In_opt_ PVOID)
signed char * PCHAR
Definition: retypes.h:7
struct _MINIDUMP_EXCEPTION * PMINIDUMP_EXCEPTION
ULONG NumberOfMemoryRanges
Definition: dbghelp.h:802
unsigned __int3264 UINT_PTR
Definition: activex.cpp:275
BOOL WINAPI SymEnumTypesW(_In_ HANDLE, _In_ ULONG64, _In_ PSYM_ENUMERATESYMBOLS_CALLBACKW, _In_opt_ PVOID)
struct _MINIDUMP_THREAD_CALLBACK * PMINIDUMP_THREAD_CALLBACK
DWORD RVA
Definition: dbghelp.h:594
BOOL WINAPI SymEnumSym(_In_ HANDLE, _In_ ULONG64, _In_ PSYM_ENUMERATESYMBOLS_CALLBACK, _In_opt_ PVOID)
ULONG Tag
Definition: compat.h:698
SYM_TYPE SymType
Definition: compat.h:885
BOOL WINAPI SymEnumSourceFiles(_In_ HANDLE, _In_ ULONG64, _In_opt_ PCSTR, _In_ PSYM_ENUMSOURCEFILES_CALLBACK, _In_opt_ PVOID)
BOOL WINAPI SymGetLineNext(_In_ HANDLE, _Inout_ PIMAGEHLP_LINE)
DWORD ReservedSizeOfCodeViewSymbols
Definition: dbghelp.h:2283
ULONG WINAPI SymGetFileLineOffsets64(_In_ HANDLE, _In_opt_ PCSTR, _In_ PCSTR, _Out_writes_(BufferLines) PDWORD64, _In_ ULONG BufferLines)
struct _LOADED_IMAGE LOADED_IMAGE
BOOL WINAPI SymGetSymFromAddr64(_In_ HANDLE, _In_ DWORD64, _Out_opt_ PDWORD64, _Inout_ PIMAGEHLP_SYMBOL64)
const uint16_t * PCWSTR
Definition: typedefs.h:55
DWORD MaxNameLength
Definition: compat.h:1120
BOOL WINAPI SymAddSymbolW(_In_ HANDLE, _In_ ULONG64, _In_ PCWSTR, _In_ DWORD64, _In_ DWORD, _In_ DWORD)
SYM_TYPE
Definition: compat.h:703
BOOL WINAPI SymGetLinePrev(_In_ HANDLE, _Inout_ PIMAGEHLP_LINE)
BOOL(CALLBACK * PSYM_ENUMLINES_CALLBACKW)(_In_ PSRCCODEINFOW, _In_opt_ PVOID)
Definition: dbghelp.h:1770
PEXCEPTION_POINTERS ExceptionPointers
Definition: dbghelp.h:767
ADDRESS_MODE Mode
Definition: compat.h:838
DWORD(CALLBACK * PGET_MODULE_BASE_ROUTINE)(_In_ HANDLE, _In_ DWORD)
Definition: dbghelp.h:2418
ULONG64 RVA64
Definition: compat.h:904
DWORD ReservedNumberOfDebugDirectories
Definition: dbghelp.h:2291
BOOLEAN fDOSImage
Definition: dbghelp.h:108
struct _MINIDUMP_THREAD_EX_CALLBACK MINIDUMP_THREAD_EX_CALLBACK
struct MINIDUMP_EXCEPTION_STREAM * PMINIDUMP_EXCEPTION_STREAM
ULONG64 BaseOfImage
Definition: dbghelp.h:821
ULONG NameLen
Definition: compat.h:699
struct _IMAGEHLP_DEFERRED_SYMBOL_LOAD * PIMAGEHLP_DEFERRED_SYMBOL_LOAD
BOOL WINAPI SymEnumerateSymbols(_In_ HANDLE, _In_ ULONG, _In_ PSYM_ENUMSYMBOLS_CALLBACK, _In_opt_ PVOID)
struct _IMAGEHLP_GET_TYPE_INFO_PARAMS IMAGEHLP_GET_TYPE_INFO_PARAMS
struct _MINIDUMP_THREAD MINIDUMP_THREAD
struct _SOURCEFILEW SOURCEFILEW
DWORD64 ModBase
Definition: compat.h:1100
BOOL WINAPI SymGetSymPrevW64(_In_ HANDLE, _Inout_ PIMAGEHLP_SYMBOLW64)
SYMBOL_INFO si
Definition: dbghelp.h:1159
ULONG64 Address
Definition: compat.h:1007
struct png_info_def **typedef void(__cdecl typeof(png_destroy_read_struct))(struct png_struct_def **
Definition: typeof.h:49
BOOL WINAPI MiniDumpWriteDump(_In_ HANDLE, _In_ DWORD, _In_ HANDLE, _In_ MINIDUMP_TYPE, _In_opt_ PMINIDUMP_EXCEPTION_INFORMATION, _In_opt_ PMINIDUMP_USER_STREAM_INFORMATION, _In_opt_ PMINIDUMP_CALLBACK_INFORMATION)
BOOL WINAPI SymInitializeW(_In_ HANDLE, _In_opt_ PCWSTR, _In_ BOOL)
DWORD NumberOfStreams
Definition: dbghelp.h:783
HANDLE hFile
Definition: dbghelp.h:100
DWORD Params[4]
Definition: dbghelp.h:2168
ULONG MaxNameLen
Definition: compat.h:700
DWORD SizeOfStruct
Definition: compat.h:1160
BOOL WINAPI SymMatchFileName(_In_ PCSTR, _In_ PCSTR, _Outptr_opt_ PSTR *, _Outptr_opt_ PSTR *)
struct _MINIDUMP_USER_STREAM MINIDUMP_USER_STREAM
union _MINIDUMP_HEADER::@2694 DUMMYUNIONNAME
BOOL WINAPI SymGetLineFromAddr(_In_ HANDLE, _In_ DWORD, _Out_ PDWORD, _Out_ PIMAGEHLP_LINE)
ULONG NumberParameters
Definition: dbghelp.h:759
struct _IMAGEHLP_SYMBOLW64 IMAGEHLP_SYMBOLW64
WCHAR ModuleName[32]
Definition: compat.h:725
BOOL(CALLBACK * PENUMLOADED_MODULES_CALLBACKW64)(_In_ PCWSTR, _In_ DWORD64, _In_ ULONG, _In_opt_ PVOID)
Definition: dbghelp.h:991
struct _IMAGEHLP_SYMBOLW IMAGEHLP_SYMBOLW
USHORT MajorVersion
Definition: compat.h:1212
MINIDUMP_THREAD_EX_CALLBACK ThreadEx
Definition: compat.h:972
PVOID FuncTableEntry
Definition: dbghelp.h:2167
HANDLE WINAPI SymFindExecutableImageW(_In_ HANDLE, _In_ PCWSTR, _Out_writes_(MAX_PATH+1) PWSTR, _In_ PFIND_EXE_FILE_CALLBACKW, _In_ PVOID)
BOOL WINAPI SymSetContext(_In_ HANDLE, _In_ PIMAGEHLP_STACK_FRAME, _In_opt_ PIMAGEHLP_CONTEXT)
ULONG MaxNameLen
Definition: compat.h:1012
BOOL WINAPI SymGetTypeInfo(_In_ HANDLE, _In_ DWORD64, _In_ ULONG, _In_ IMAGEHLP_SYMBOL_TYPE_INFO, _Out_ PVOID)
PIMAGE_SECTION_HEADER Sections
Definition: dbghelp.h:105
struct _LOADED_IMAGE * PLOADED_IMAGE
PIMAGE_COFF_SYMBOLS_HEADER CoffSymbols
Definition: dbghelp.h:2282
struct _SYMBOL_INFO_PACKAGEW * PSYMBOL_INFO_PACKAGEW
ULONG64 ModBase
Definition: compat.h:1004
MINIDUMP_LOCATION_DESCRIPTOR ThreadContext
Definition: dbghelp.h:900
struct _SOURCEFILE * PSOURCEFILE
union _MINIDUMP_SYSTEM_INFO::_CPU_INFORMATION Cpu
PVOID Key
Definition: compat.h:753
BOOL(CALLBACK * PSYM_ENUMERATESYMBOLS_CALLBACKW)(_In_ PSYMBOL_INFOW, _In_ ULONG, _In_opt_ PVOID)
Definition: dbghelp.h:1276
struct _IMAGEHLP_MODULEW64 IMAGEHLP_MODULEW64
PIMAGE_SECTION_HEADER ReservedSections
Definition: dbghelp.h:2272
BOOL WINAPI SymRefreshModuleList(_In_ HANDLE)
DWORD64 BaseOfImage
Definition: compat.h:719
struct _KDHELP64 KDHELP64
DWORD LineNumber
Definition: compat.h:1180
MINIDUMP_THREAD_CALLBACK Thread
Definition: compat.h:971
uint16_t * PWSTR
Definition: typedefs.h:54
SYMBOL_INFOW si
Definition: dbghelp.h:1165
BOOL WINAPI SymGetLineFromAddr64(_In_ HANDLE, _In_ DWORD64, _Out_ PDWORD, _Out_ PIMAGEHLP_LINE64)
DWORD SizeOfStruct
Definition: compat.h:1136
ULONG64 FuncTableEntry
Definition: compat.h:1022
PVOID(CALLBACK * PSYMBOL_FUNCENTRY_CALLBACK)(_In_ HANDLE, _In_ DWORD, _In_opt_ PVOID)
Definition: dbghelp.h:2458
enum _MODULE_WRITE_FLAGS MODULE_WRITE_FLAGS
DWORD SizeOfStruct
Definition: compat.h:1098
unsigned char * PUCHAR
Definition: retypes.h:3
BOOL WINAPI EnumDirTree(_In_opt_ HANDLE, _In_ PCSTR, _In_ PCSTR, _Out_writes_opt_(MAX_PATH+1) PSTR, _In_opt_ PENUMDIRTREE_CALLBACK, _In_opt_ PVOID)
char CHAR
Definition: xmlstorage.h:175
_MINIDUMP_STREAM_TYPE
Definition: dbghelp.h:922
DWORD BaseOfImage
Definition: compat.h:857
BOOL(CALLBACK * PFIND_EXE_FILE_CALLBACKW)(_In_ HANDLE, _In_ PCWSTR, _In_opt_ PVOID)
Definition: dbghelp.h:1936
IMAGEHLP_SYMBOL_TYPE_INFO * ReqKinds
Definition: dbghelp.h:1210
CHAR LoadedPdbName[256]
Definition: compat.h:889
ULONG Scope
Definition: compat.h:697
BOOL(CALLBACK * PFINDFILEINPATHCALLBACKW)(_In_ PCWSTR, _In_ PVOID)
Definition: dbghelp.h:1887
DWORD64 KeUserCallbackDispatcher
Definition: compat.h:1036
CHAR ModuleName[32]
Definition: compat.h:886
*nSize LPSTR _Inout_ LPDWORD nSize
Definition: winbase.h:2024
PIMAGE_NT_HEADERS FileHeader
Definition: dbghelp.h:102
BOOL(CALLBACK * PSYM_ENUMSYMBOLS_CALLBACK)(_In_ PCSTR, _In_ ULONG, _In_ ULONG, _In_opt_ PVOID)
Definition: dbghelp.h:2437
ULONG64 BackingStoreOffset
Definition: compat.h:1021
WCHAR ImageName[256]
Definition: compat.h:864
USHORT MinorVersion
Definition: compat.h:1213
BOOL WINAPI SymSetSearchPathW(_In_ HANDLE, _In_opt_ PCWSTR)
struct _MINIDUMP_THREAD_LIST MINIDUMP_THREAD_LIST
#define CALLBACK
Definition: compat.h:27
BOOL WINAPI SymGetModuleInfoW(_In_ HANDLE, _In_ DWORD, _Out_ PIMAGEHLP_MODULEW)
DWORD WINAPI SymSetOptions(_In_ DWORD)
DWORD64 Address
Definition: compat.h:1104
#define _Outptr_
Definition: no_sal2.h:396
ULONG Flags
Definition: compat.h:693
PWSTR WINAPI SymGetHomeDirectoryW(_In_ DWORD, _Out_writes_(size) PWSTR, _In_ size_t size)
BOOL WINAPI SymGetLinePrevW64(_In_ HANDLE, _Inout_ PIMAGEHLP_LINEW64)
BOOL WINAPI SymGetSymNextW64(_In_ HANDLE, _Inout_ PIMAGEHLP_SYMBOLW64)
BOOL WINAPI UnmapDebugInformation(_Out_ PIMAGE_DEBUG_INFORMATION)
struct _IMAGEHLP_MODULEW64 * PIMAGEHLP_MODULEW64
PVOID Key
Definition: compat.h:1099
DWORD SizeOfStruct
Definition: compat.h:1126
DWORD SizeOfStruct
Definition: compat.h:1169
PVOID WINAPI SymFunctionTableAccess(_In_ HANDLE, _In_ DWORD)
struct _MINIDUMP_MODULE MINIDUMP_MODULE
BOOL WINAPI SymSetParentWindow(_In_ HWND)
BOOL WINAPI SearchTreeForFileW(_In_ PCWSTR, _In_ PCWSTR, _Out_writes_(MAX_PATH+1) PWSTR)
struct _MINIDUMP_CALLBACK_OUTPUT MINIDUMP_CALLBACK_OUTPUT
BOOL WINAPI SymEnumLines(_In_ HANDLE, _In_ ULONG64, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ PSYM_ENUMLINES_CALLBACK, _In_opt_ PVOID)
struct _DBGHELP_MODLOAD_DATA MODLOAD_DATA
DWORD Reserved
Definition: dbghelp.h:788
DWORD(CALLBACK * PTRANSLATE_ADDRESS_ROUTINE)(_In_ HANDLE, _In_ HANDLE, _Out_ LPADDRESS)
Definition: dbghelp.h:2464
MINIDUMP_MODULE_CALLBACK Module
Definition: compat.h:973
struct _SYMBOL_INFO_PACKAGE * PSYMBOL_INFO_PACKAGE
struct _SOURCEFILE SOURCEFILE
ULONG TypeIndex
Definition: compat.h:688
#define EXCEPTION_MAXIMUM_PARAMETERS
Definition: compat.h:194
struct _MINIDUMP_LOCATION_DESCRIPTOR64 MINIDUMP_LOCATION_DESCRIPTOR64
_In_ BOOL _In_ HANDLE hProcess
Definition: mapping.h:70
struct _MINIDUMP_MEMORY_LIST MINIDUMP_MEMORY_LIST
struct _IMAGEHLP_MODULE * PIMAGEHLP_MODULE
BOOL(CALLBACK * PSYM_ENUMMODULES_CALLBACKW64)(_In_ PCWSTR, _In_ DWORD64, _In_opt_ PVOID)
Definition: dbghelp.h:1018
BOOL(CALLBACK * PREAD_PROCESS_MEMORY_ROUTINE)(_In_ HANDLE, _In_ DWORD, _Out_writes_bytes_(nSize) PVOID, _In_ DWORD nSize, _Out_ PDWORD)
Definition: dbghelp.h:2423
DWORD64 Params[4]
Definition: compat.h:1048
ULONG64 Address
Definition: compat.h:695
BOOL WINAPI SymEnumerateModulesW64(_In_ HANDLE, _In_ PSYM_ENUMMODULES_CALLBACKW64, _In_opt_ PVOID)
BOOL WINAPI SymGetLineNext64(_In_ HANDLE, _Inout_ PIMAGEHLP_LINE64)
BOOL(CALLBACK * PENUMLOADED_MODULES_CALLBACK)(_In_ PCSTR, _In_ ULONG, _In_ ULONG, _In_opt_ PVOID)
Definition: dbghelp.h:2406
ADDRESS AddrPC
Definition: dbghelp.h:2163
DWORD LineNumber
Definition: compat.h:1162
DWORD WINAPI SymGetOptions(void)
Definition: dbghelp.c:458
BOOL WINAPI SymRegisterCallback(_In_ HANDLE, _In_ PSYMBOL_REGISTERED_CALLBACK, _In_opt_ PVOID)
DWORD WINAPI UnDecorateSymbolName(_In_ PCSTR, _Out_writes_(maxStringLength) PSTR, _In_ DWORD maxStringLength, _In_ DWORD)
DWORD KeUserCallbackDispatcher
Definition: dbghelp.h:2139
BOOL WINAPI SymEnumerateSymbols64(_In_ HANDLE, _In_ ULONG64, _In_ PSYM_ENUMSYMBOLS_CALLBACK64, _In_opt_ PVOID)
DWORD64 WINAPI SymGetModuleBase64(_In_ HANDLE, _In_ DWORD64)
BOOL(CALLBACK * PSYMBOLSERVERCALLBACKPROC)(UINT_PTR, ULONG64, ULONG64)
Definition: dbghelp.h:2334
uint16_t * PWCHAR
Definition: typedefs.h:54
struct _KDHELP KDHELP
struct _IMAGEHLP_STACK_FRAME IMAGEHLP_STACK_FRAME
ADDRESS64 AddrBStore
Definition: compat.h:1046
DWORD WINAPI GetTimestampForLoadedLibrary(_In_ HMODULE)
_IMAGEHLP_SYMBOL_TYPE_INFO
Definition: compat.h:1054
PVOID(CALLBACK * PSYMBOL_FUNCENTRY_CALLBACK64)(_In_ HANDLE, _In_ ULONG64, _In_ ULONG64)
Definition: dbghelp.h:2232
struct _MINIDUMP_MEMORY_DESCRIPTOR MINIDUMP_MEMORY_DESCRIPTOR
LPAPI_VERSION WINAPI ImagehlpApiVersion(void)
Definition: dbghelp.c:657
DWORD ReservedNumberOfFpoTableEntries
Definition: dbghelp.h:2279
struct _IMAGEHLP_CBA_EVENTW * PIMAGEHLP_CBA_EVENTW
#define BOOL
Definition: nt_native.h:43
struct _MINIDUMP_MISC_INFO * PMINIDUMP_MISC_INFO
enum _MINIDUMP_CALLBACK_TYPE MINIDUMP_CALLBACK_TYPE
#define DWORD
Definition: nt_native.h:44
DWORD ThCallbackStack
Definition: compat.h:1031
ULONG64 Flags
Definition: dbghelp.h:791
struct _IMAGEHLP_LINEW64 * PIMAGEHLP_LINEW64
PCHAR WINAPI SymSetHomeDirectory(_In_opt_ HANDLE, _In_opt_ PCSTR)
struct _MINIDUMP_USER_STREAM_INFORMATION * PMINIDUMP_USER_STREAM_INFORMATION
struct _MINIDUMP_DIRECTORY MINIDUMP_DIRECTORY
PCHAR FileName
Definition: compat.h:747
WORD Segment
Definition: compat.h:816
DWORD CheckSum
Definition: compat.h:860
#define _In_opt_
Definition: no_sal2.h:213
BOOL WINAPI SymGetSymNext64(_In_ HANDLE, _Inout_ PIMAGEHLP_SYMBOL64)
BOOL WINAPI SymEnumSymbolsW(_In_ HANDLE, _In_ ULONG64, _In_opt_ PCWSTR, _In_ PSYM_ENUMERATESYMBOLS_CALLBACKW, _In_opt_ PVOID)
PIMAGE_FUNCTION_ENTRY ReservedFunctionTableEntries
Definition: dbghelp.h:2276
BOOL(CALLBACK * PREAD_PROCESS_MEMORY_ROUTINE64)(_In_ HANDLE, _In_ DWORD64, _Out_writes_bytes_(nSize) PVOID, _In_ DWORD nSize, _Out_ PDWORD)
Definition: dbghelp.h:2193
ULONG NumberOfSections
Definition: dbghelp.h:104
BOOL WINAPI SymGetSourceFile(_In_ HANDLE, _In_ ULONG64, _In_opt_ PCSTR, _In_ PCSTR, _Out_writes_(Size) PSTR, _In_ DWORD Size)
BOOL(WINAPI * PSYMBOLSERVERCLOSEPROC)(void)
Definition: dbghelp.h:2332
BOOL(CALLBACK * PSYM_ENUMMODULES_CALLBACK64)(_In_ PCSTR, _In_ DWORD64, _In_opt_ PVOID)
Definition: dbghelp.h:1005
BOOL WINAPI SymSearch(_In_ HANDLE, _In_ ULONG64, _In_opt_ DWORD, _In_opt_ DWORD, _In_opt_ PCSTR, _In_opt_ DWORD64, _In_ PSYM_ENUMERATESYMBOLS_CALLBACK, _In_opt_ PVOID, _In_ DWORD)
struct _IMAGEHLP_LINEW IMAGEHLP_LINEW
DWORD TimeDateStamp
Definition: compat.h:882
BOOL WINAPI SymGetModuleInfo64(_In_ HANDLE, _In_ DWORD64, _Out_ PIMAGEHLP_MODULE64)
BOOL(CALLBACK * PFIND_EXE_FILE_CALLBACK)(_In_ HANDLE, _In_ PCSTR, _In_opt_ PVOID)
Definition: dbghelp.h:1930
uint32_t ULONG_PTR
Definition: typedefs.h:63
DWORD FramePointer
Definition: compat.h:1034
SYM_TYPE
Definition: dbghelp.h:162
BOOL(WINAPI * MINIDUMP_CALLBACK_ROUTINE)(_Inout_ PVOID, _In_ const PMINIDUMP_CALLBACK_INPUT, _Inout_ PMINIDUMP_CALLBACK_OUTPUT)
Definition: dbghelp.h:724
BOOL WINAPI SymGetLineFromName(_In_ HANDLE, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ DWORD, _Out_ PLONG, _Inout_ PIMAGEHLP_LINE)
#define _Out_writes_(size)
Definition: no_sal2.h:367
PCHAR WINAPI SymGetHomeDirectory(_In_ DWORD, _Out_writes_(size) PSTR, _In_ size_t size)
DWORD64 ModBase
Definition: compat.h:1091
DWORD WINAPI SymGetModuleBase(_In_ HANDLE, _In_ DWORD)
struct _SYMBOL_INFOW * PSYMBOL_INFOW
struct _MINIDUMP_DIRECTORY * PMINIDUMP_DIRECTORY
ULONG NameLen
Definition: compat.h:1011
struct _MINIDUMP_THREAD_EX_CALLBACK * PMINIDUMP_THREAD_EX_CALLBACK
UCHAR NumberOfProcessors
Definition: dbghelp.h:855
WCHAR LoadedImageName[256]
Definition: compat.h:727
USHORT Revision
Definition: compat.h:1214
ULONG __unusedAlignment
Definition: dbghelp.h:760
struct _MINIDUMP_EXCEPTION MINIDUMP_EXCEPTION
PVOID WINAPI SymFunctionTableAccess64(_In_ HANDLE, _In_ DWORD64)
BOOL(CALLBACK * PENUMDIRTREE_CALLBACK)(_In_ PCSTR, _In_opt_ PVOID)
Definition: dbghelp.h:2045
struct _MINIDUMP_INCLUDE_MODULE_CALLBACK * PMINIDUMP_INCLUDE_MODULE_CALLBACK
BOOL WINAPI SymEnumSourceLines(_In_ HANDLE, _In_ ULONG64, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_opt_ DWORD, _In_ DWORD, _In_ PSYM_ENUMLINES_CALLBACK, _In_opt_ PVOID)
struct _STACKFRAME * LPSTACKFRAME
SymTagEnum
Definition: compat.h:1220
struct _IMAGEHLP_MODULEW IMAGEHLP_MODULEW
struct _MINIDUMP_CALLBACK_OUTPUT::@344::@345 DUMMYSTRUCTNAME
ADDRESS_MODE
Definition: compat.h:795
unsigned int BOOL
Definition: ntddk_ex.h:94
UCHAR Version
Definition: dbghelp.h:110
DWORD Address
Definition: compat.h:1173
struct _IMAGEHLP_CBA_READ_MEMORY IMAGEHLP_CBA_READ_MEMORY
BOOL WINAPI EnumerateLoadedModules(_In_ HANDLE, _In_ PENUMLOADED_MODULES_CALLBACK, _In_opt_ PVOID)
DWORD ImageSize
Definition: compat.h:845
BOOL(CALLBACK * PFIND_DEBUG_FILE_CALLBACKW)(_In_ HANDLE, _In_ PCWSTR, _In_ PVOID)
Definition: dbghelp.h:1840
struct _tagADDRESS64 * LPADDRESS64
ULONG64 Reserved1
Definition: dbghelp.h:830
BOOL(WINAPI * PSYMBOLSERVERPINGPROCW)(PCWSTR)
Definition: dbghelp.h:2338
USHORT ProcessorArchitecture
Definition: dbghelp.h:847
struct _SRCCODEINFO SRCCODEINFO
ULONG ExceptionFlags
Definition: dbghelp.h:756
struct _KDHELP64 * PKDHELP64
struct _SYMBOL_INFO SYMBOL_INFO
ULONG SizeOfStruct
Definition: compat.h:999
DWORD MaxNameLength
Definition: compat.h:1130
struct _MINIDUMP_CALLBACK_INPUT * PMINIDUMP_CALLBACK_INPUT
DWORD SizeOfStruct
Definition: compat.h:744
BOOL WINAPI SymGetSourceFileToken(_In_ HANDLE, _In_ ULONG64, _In_ PCSTR, _Outptr_ PVOID *, _Out_ DWORD *)
struct _MINIDUMP_INCLUDE_MODULE_CALLBACK MINIDUMP_INCLUDE_MODULE_CALLBACK
BOOL WINAPI SymGetSymPrev(_In_ HANDLE, _Inout_ PIMAGEHLP_SYMBOL)
MINIDUMP_LOCATION_DESCRIPTOR Location
Definition: dbghelp.h:750
BOOL WINAPI SymEnumSymbolsForAddrW(_In_ HANDLE, _In_ DWORD64, _In_ PSYM_ENUMERATESYMBOLS_CALLBACKW, _In_opt_ PVOID)
VS_FIXEDFILEINFO VersionInfo
Definition: dbghelp.h:826
struct _MINIDUMP_INCLUDE_THREAD_CALLBACK * PMINIDUMP_INCLUDE_THREAD_CALLBACK
ULONG Scope
Definition: compat.h:1009
struct _IMAGE_DEBUG_INFORMATION * PIMAGE_DEBUG_INFORMATION
DWORD64 ModBase
Definition: compat.h:754
PIMAGEHLP_SYMBOL Symbol
Definition: dbghelp.h:513
struct _MINIDUMP_SYSTEM_INFO::_CPU_INFORMATION::@2699 X86CpuInfo
KDHELP KdHelp
Definition: dbghelp.h:2172
ULONG64 ExceptionAddress
Definition: dbghelp.h:758
BOOL WINAPI SymGetSourceVarFromTokenW(_In_ HANDLE, _In_ PVOID, _In_opt_ PCWSTR, _In_ PCWSTR, _Out_writes_(Size) PWSTR, _In_ DWORD Size)
ULONG64 ModBase
Definition: compat.h:692
ULONG Index
Definition: compat.h:690
unsigned char BOOLEAN
struct _MINIDUMP_CALLBACK_OUTPUT * PMINIDUMP_CALLBACK_OUTPUT
BOOL WINAPI SymDeleteSymbol(_In_ HANDLE, _In_ ULONG64, _In_opt_ PCSTR, _In_ DWORD64, _In_ DWORD)
BOOL WINAPI SearchTreeForFile(_In_ PCSTR, _In_ PCSTR, _Out_writes_(MAX_PATH+1) PSTR)
PVOID(CALLBACK * PFUNCTION_TABLE_ACCESS_ROUTINE64)(_In_ HANDLE, _In_ DWORD64)
Definition: dbghelp.h:2201
BOOL IMAGEAPI SymSrvIsStoreW(_In_opt_ HANDLE hProcess, _In_ PCWSTR path)
ULONG ProcessKernelTime
Definition: dbghelp.h:816
PIMAGE_DEBUG_INFORMATION WINAPI MapDebugInformation(_In_opt_ HANDLE, _In_ PCSTR, _In_opt_ PCSTR, _In_ ULONG)
BOOL WINAPI SymGetSymFromName(_In_ HANDLE, _In_ PCSTR, _Inout_ PIMAGEHLP_SYMBOL)
PVOID WINAPI ImageDirectoryEntryToData(_In_ PVOID, _In_ BOOLEAN, _In_ USHORT, _Out_ PULONG)
MINIDUMP_EXCEPTION ExceptionRecord
Definition: dbghelp.h:775
BOOL WINAPI SymEnumSymbolsForAddr(_In_ HANDLE, _In_ DWORD64, _In_ PSYM_ENUMERATESYMBOLS_CALLBACK, _In_opt_ PVOID)
DWORD NextCallback
Definition: dbghelp.h:2136
VS_FIXEDFILEINFO VersionInfo
Definition: compat.h:950
#define _Out_writes_bytes_(size)
Definition: no_sal2.h:370
#define _Out_
Definition: no_sal2.h:323
PCHAR FileName
Definition: compat.h:1087
struct _IMAGEHLP_LINEW * PIMAGEHLP_LINEW
LPAPI_VERSION WINAPI ImagehlpApiVersionEx(_In_ LPAPI_VERSION)
BOOL(WINAPI * PSYMBOLSERVERSETOPTIONSPROC)(UINT_PTR, ULONG64)
Definition: dbghelp.h:2333
BOOL WINAPI FindFileInPath(HANDLE, PCSTR, PCSTR, PVOID, DWORD, DWORD, DWORD, PSTR, PFINDFILEINPATHCALLBACK, PVOID)
BOOL WINAPI SymFromAddr(_In_ HANDLE, _In_ DWORD64, _Out_opt_ DWORD64 *, _Inout_ SYMBOL_INFO *)
CHAR ModuleName[32]
Definition: compat.h:850
HANDLE WINAPI FindExecutableImageEx(_In_ PCSTR, _In_ PCSTR, _Out_writes_(MAX_PATH+1) PSTR, _In_opt_ PFIND_EXE_FILE_CALLBACK, _In_opt_ PVOID)
BOOL(WINAPI * PSYMBOLSERVEROPENPROC)(void)
Definition: dbghelp.h:2331
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
Definition: bufpool.h:45
BOOL(CALLBACK * PSYM_ENUMSYMBOLS_CALLBACK64)(_In_ PCSTR, _In_ DWORD64, _In_ ULONG, _In_opt_ PVOID)
Definition: dbghelp.h:1395
DWORD Address
Definition: compat.h:1164
HANDLE WINAPI FindDebugInfoFile(_In_ PCSTR, _In_ PCSTR, _Out_writes_(MAX_PATH+1) PSTR)
BOOL WINAPI SymGetSymFromAddr(_In_ HANDLE, _In_ DWORD, _Out_opt_ PDWORD, _Inout_ PIMAGEHLP_SYMBOL)
BOOL WINAPI SymMatchFileNameW(_In_ PCWSTR, _In_ PCWSTR, _Outptr_opt_ PWSTR *, _Outptr_opt_ PWSTR *)
void * PVOID
Definition: retypes.h:9
BOOL(WINAPI * PSYMBOLSERVERPINGPROC)(PCSTR)
Definition: dbghelp.h:2336
PWSTR WINAPI SymSetHomeDirectoryW(_In_opt_ HANDLE, _In_opt_ PCWSTR)
DWORD SizeOfStruct
Definition: compat.h:879
Definition: winnt_old.h:3394
BOOL WINAPI SymUnDName(_In_ PIMAGEHLP_SYMBOL, _Out_writes_(UnDecNameLength) PSTR, _In_ DWORD UnDecNameLength)
ULONG ThreadId
Definition: dbghelp.h:894
struct _IMAGEHLP_SYMBOL IMAGEHLP_SYMBOL
struct _MINIDUMP_SYSTEM_INFO::_CPU_INFORMATION::@2700 OtherCpuInfo
BOOL WINAPI SymUnDName64(_In_ PIMAGEHLP_SYMBOL64, _Out_writes_(UnDecNameLength) PSTR, _In_ DWORD UnDecNameLength)
BOOL WINAPI SymGetSourceVarFromToken(_In_ HANDLE, _In_ PVOID, _In_opt_ PCSTR, _In_ PCSTR, _Out_writes_(Size) PSTR, _In_ DWORD Size)
BOOL WINAPI SymFromName(_In_ HANDLE, _In_ PCSTR, _Inout_ PSYMBOL_INFO)
ULONG64 Params[4]
Definition: compat.h:1023
BOOL WINAPI SymMatchStringW(_In_ PCWSTR, _In_ PCWSTR, _In_ BOOL)
BOOL WINAPI SymFromNameW(_In_ HANDLE, _In_ PCWSTR, _Inout_ PSYMBOL_INFOW)
MINIDUMP_INCLUDE_THREAD_CALLBACK IncludeThread
Definition: compat.h:974
BOOL WINAPI SymFromToken(_In_ HANDLE, _In_ DWORD64, _In_ DWORD, _Inout_ PSYMBOL_INFO)
BOOL WINAPI SymGetModuleInfo(_In_ HANDLE, _In_ DWORD, _Out_ PIMAGEHLP_MODULE)
ADDRESS_MODE
Definition: dbghelp.h:119
struct _IMAGEHLP_DEFERRED_SYMBOL_LOADW64 * PIMAGEHLP_DEFERRED_SYMBOL_LOADW64
struct _IMAGEHLP_MODULEW * PIMAGEHLP_MODULEW
struct _IMAGEHLP_LINE * PIMAGEHLP_LINE
DWORD WINAPI UnDecorateSymbolNameW(_In_ PCWSTR, _Out_writes_(maxStringLength) PWSTR, _In_ DWORD maxStringLength, _In_ DWORD)
#define IMAGEAPI
Definition: dbghelp.h:94
BOOL(CALLBACK * PSYM_ENUMMODULES_CALLBACK)(_In_ PCSTR, _In_ ULONG, _In_opt_ PVOID)
Definition: dbghelp.h:2431
BOOL GlobalSymbols
Definition: compat.h:898
_MODULE_WRITE_FLAGS
Definition: dbghelp.h:683
struct _MINIDUMP_SYSTEM_INFO MINIDUMP_SYSTEM_INFO
HANDLE WINAPI SymFindDebugInfoFile(_In_ HANDLE, _In_ PCSTR, _Out_writes_(MAX_PATH+1) PSTR, _In_opt_ PFIND_DEBUG_FILE_CALLBACK, _In_opt_ PVOID)
#define _Out_opt_
Definition: no_sal2.h:339
BOOL WINAPI SymGetScope(_In_ HANDLE, _In_ ULONG64, _In_ DWORD, _Inout_ PSYMBOL_INFO)
BOOL WINAPI SymMatchString(_In_ PCSTR, _In_ PCSTR, _In_ BOOL)
MINIDUMP_THREAD Threads[1]
Definition: dbghelp.h:906
BOOL WINAPI SymGetTypeFromName(_In_ HANDLE, _In_ ULONG64, _In_ PCSTR, _Inout_ PSYMBOL_INFO)
struct _IMAGEHLP_MODULE64 * PIMAGEHLP_MODULE64
BOOL WINAPI SymRegisterCallback64(_In_ HANDLE, _In_ PSYMBOL_REGISTERED_CALLBACK64, _In_ ULONG64)
struct _MINIDUMP_MODULE_LIST * PMINIDUMP_MODULE_LIST
MINIDUMP_INCLUDE_MODULE_CALLBACK IncludeModule
Definition: compat.h:975
GLsizeiptr size
Definition: glext.h:5919
DWORD64 WINAPI SymLoadModuleEx(_In_ HANDLE, _In_opt_ HANDLE, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ DWORD64, _In_ DWORD, _In_opt_ PMODLOAD_DATA, _In_opt_ DWORD)
union _MINIDUMP_SYSTEM_INFO::@2696 DUMMYUNIONNAME1
PUCHAR MappedAddress
Definition: dbghelp.h:101
struct _IMAGE_DEBUG_INFORMATION IMAGE_DEBUG_INFORMATION
struct _MINIDUMP_LOCATION_DESCRIPTOR MINIDUMP_LOCATION_DESCRIPTOR
ADDRESS AddrBStore
Definition: dbghelp.h:2173
BOOL WINAPI SymGetTypeFromNameW(_In_ HANDLE, _In_ ULONG64, _In_ PCWSTR, _Inout_ PSYMBOL_INFOW)
MINIDUMP_LOCATION_DESCRIPTOR CvRecord
Definition: dbghelp.h:827
BOOL WINAPI SymRegisterFunctionEntryCallback(_In_ HANDLE, _In_ PSYMBOL_FUNCENTRY_CALLBACK, _In_opt_ PVOID)
DWORD SizeOfStruct
Definition: compat.h:1178
__wchar_t WCHAR
Definition: xmlstorage.h:180
BOOLEAN fReadOnly
Definition: dbghelp.h:109
DWORD TimeDateStamp
Definition: dbghelp.h:789
WCHAR LoadedImageName[256]
Definition: compat.h:865
BOOL WINAPI SymFindFileInPath(_In_ HANDLE, _In_opt_ PCSTR, _In_ PCSTR, _In_opt_ PVOID, _In_ DWORD, _In_ DWORD, _In_ DWORD, _Out_writes_(MAX_PATH+1) PSTR, _In_opt_ PFINDFILEINPATHCALLBACK, _In_opt_ PVOID)
struct _IMAGEHLP_STACK_FRAME * PIMAGEHLP_STACK_FRAME
BOOL(CALLBACK * PSYM_ENUMLINES_CALLBACK)(_In_ PSRCCODEINFO, _In_opt_ PVOID)
Definition: dbghelp.h:1765
DWORD64 BaseOfImage
Definition: compat.h:880
PWSTR FileName
Definition: compat.h:1172
DWORD64 WINAPI SymLoadModule64(_In_ HANDLE, _In_opt_ HANDLE, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ DWORD64, _In_ DWORD)
PIMAGE_SECTION_HEADER LastRvaSection
Definition: dbghelp.h:103
BOOL WINAPI StackWalk64(_In_ DWORD, _In_ HANDLE, _In_ HANDLE, _Inout_ LPSTACKFRAME64, _Inout_ PVOID, _In_opt_ PREAD_PROCESS_MEMORY_ROUTINE64, _In_opt_ PFUNCTION_TABLE_ACCESS_ROUTINE64, _In_opt_ PGET_MODULE_BASE_ROUTINE64, _In_opt_ PTRANSLATE_ADDRESS_ROUTINE64)
struct _SYMBOL_INFOW SYMBOL_INFOW
struct _IMAGEHLP_CBA_EVENTW IMAGEHLP_CBA_EVENTW
struct _IMAGEHLP_SYMBOLW64 * PIMAGEHLP_SYMBOLW64
struct _tagADDRESS * LPADDRESS
BOOL WINAPI SymGetSymFromName64(_In_ HANDLE, _In_ PCSTR, _Inout_ PIMAGEHLP_SYMBOL64)
BOOL WINAPI SymInitialize(_In_ HANDLE, _In_opt_ PCSTR, _In_ BOOL)
DWORD SizeOfStruct
Definition: compat.h:1116
DWORD LineNumber
Definition: compat.h:757
struct _MINIDUMP_EXCEPTION_INFORMATION * PMINIDUMP_EXCEPTION_INFORMATION
DWORD64 Offset
Definition: compat.h:815
enum _IMAGEHLP_SYMBOL_TYPE_INFO IMAGEHLP_SYMBOL_TYPE_INFO
BOOL WINAPI SymRegisterFunctionEntryCallback64(_In_ HANDLE, _In_ PSYMBOL_FUNCENTRY_CALLBACK64, _In_ ULONG64)
#define MAX_PATH
Definition: compat.h:26
struct API_VERSION * LPAPI_VERSION
struct _MINIDUMP_MISC_INFO MINIDUMP_MISC_INFO
#define WINAPI
Definition: msvc.h:8
DWORD BaseOfImage
Definition: compat.h:844
DWORD SystemRangeStart
Definition: dbghelp.h:2140
struct _SRCCODEINFOW SRCCODEINFOW
struct _IMAGEHLP_GET_TYPE_INFO_PARAMS * PIMAGEHLP_GET_TYPE_INFO_PARAMS
struct _MINIDUMP_MEMORY_DESCRIPTOR * PMINIDUMP_MEMORY_DESCRIPTOR
DWORD MaxNameLength
Definition: compat.h:1140
ADDRESS64 AddrReturn
Definition: compat.h:1043
#define _Outptr_result_maybenull_
Definition: no_sal2.h:426
unsigned short WORD
Definition: ntddk_ex.h:93
WCHAR ImageName[256]
Definition: compat.h:726
PVOID HANDLE
Definition: typedefs.h:71
unsigned long DWORD
Definition: ntddk_ex.h:95
DWORD ThCallbackStack
Definition: dbghelp.h:2135
struct _DBGHELP_MODLOAD_DATA * PMODLOAD_DATA
BOOL WINAPI SymGetLineNextW64(_In_ HANDLE, _Inout_ PIMAGEHLP_LINEW64)
struct _MINIDUMP_MODULE_LIST MINIDUMP_MODULE_LIST
DWORD SizeOfStruct
Definition: compat.h:856
BOOL WINAPI SymGetTypeInfoEx(_In_ HANDLE, _In_ DWORD64, _Inout_ PIMAGEHLP_GET_TYPE_INFO_PARAMS)
struct _MINIDUMP_USER_STREAM * PMINIDUMP_USER_STREAM
BOOL WINAPI MiniDumpReadDumpStream(_In_ PVOID, _In_ ULONG, _Outptr_result_maybenull_ PMINIDUMP_DIRECTORY *, _Outptr_result_maybenull_ PVOID *, _Out_opt_ ULONG *)
DWORD64 Thread
Definition: compat.h:1030
#define _Inout_
Definition: no_sal2.h:244
struct _MINIDUMP_HEADER MINIDUMP_HEADER
union _MINIDUMP_CALLBACK_OUTPUT::@344 DUMMYUNIONNAME
struct API_VERSION API_VERSION
struct _MINIDUMP_THREAD * PMINIDUMP_THREAD
PIMAGE_SECTION_HEADER WINAPI ImageRvaToSection(_In_ PIMAGE_NT_HEADERS, _In_ PVOID, _In_ ULONG)
DWORD Offset
Definition: compat.h:836
struct _IMAGEHLP_DEFERRED_SYMBOL_LOAD64 IMAGEHLP_DEFERRED_SYMBOL_LOAD64
_MINIDUMP_TYPE
Definition: compat.h:905
PVOID FuncTableEntry
Definition: compat.h:1047
struct _IMAGEHLP_LINE IMAGEHLP_LINE
ULONG64 Value
Definition: compat.h:1006
SYM_TYPE SymType
Definition: compat.h:862
DWORD SizeOfStruct
Definition: compat.h:752
Definition: dbghelp.h:166
struct _tagADDRESS64 ADDRESS64
DWORD ReservedNumberOfFunctionTableEntries
Definition: dbghelp.h:2275
DWORD ImageSize
Definition: compat.h:858
struct _IMAGEHLP_DUPLICATE_SYMBOL64 * PIMAGEHLP_DUPLICATE_SYMBOL64
HANDLE WINAPI SymFindDebugInfoFileW(_In_ HANDLE, _In_ PCWSTR, _Out_writes_(MAX_PATH+1) PWSTR, _In_opt_ PFIND_DEBUG_FILE_CALLBACKW, _In_opt_ PVOID)
unsigned __int64 ULONG64
Definition: imports.h:198
MINIDUMP_MEMORY_DESCRIPTOR MemoryRanges[1]
Definition: dbghelp.h:803
ULONG Index
Definition: compat.h:1002
unsigned char UCHAR
Definition: xmlstorage.h:181
WCHAR ModuleName[32]
Definition: compat.h:863
ULONG64 InstructionOffset
Definition: compat.h:1017
BOOL IMAGEAPI SymSrvIsStore(_In_opt_ HANDLE hProcess, _In_ PCSTR path)
ADDRESS64 AddrStack
Definition: compat.h:1045
DWORD SizeOfStruct
Definition: compat.h:718
SYM_TYPE SymType
Definition: compat.h:724
HANDLE WINAPI SymFindExecutableImage(_In_ HANDLE, _In_ PCSTR, _Out_writes_(MAX_PATH+1) PSTR, _In_ PFIND_EXE_FILE_CALLBACK, _In_ PVOID)
enum _THREAD_WRITE_FLAGS THREAD_WRITE_FLAGS
struct _IMAGEHLP_LINEW64 IMAGEHLP_LINEW64
DWORD64 Address
Definition: compat.h:758
union _MINIDUMP_SYSTEM_INFO::@2695 DUMMYUNIONNAME
struct _SRCCODEINFO * PSRCCODEINFO
ADDRESS AddrReturn
Definition: dbghelp.h:2164
BOOL WINAPI SymGetSourceFileW(_In_ HANDLE, _In_ ULONG64, _In_opt_ PCWSTR, _In_ PCWSTR, _Out_writes_(Size) PWSTR, _In_ DWORD Size)
ULONG Flags
Definition: compat.h:1005
BOOL(CALLBACK * PFIND_DEBUG_FILE_CALLBACK)(_In_ HANDLE, _In_ PCSTR, _In_ PVOID)
Definition: dbghelp.h:1834
struct _IMAGEHLP_CBA_READ_MEMORY * PIMAGEHLP_CBA_READ_MEMORY
DWORD Signature
Definition: dbghelp.h:781
ULONG SizeOfStruct
Definition: compat.h:687
BOOL WINAPI SymEnumerateModules(_In_ HANDLE, _In_ PSYM_ENUMMODULES_CALLBACK, _In_opt_ PVOID)
struct _MINIDUMP_INCLUDE_THREAD_CALLBACK MINIDUMP_INCLUDE_THREAD_CALLBACK
struct _IMAGEHLP_SYMBOL * PIMAGEHLP_SYMBOL
#define _Outptr_opt_
Definition: no_sal2.h:397
HANDLE WINAPI FindDebugInfoFileExW(_In_ PCWSTR, _In_ PCWSTR, _Out_writes_(MAX_PATH+1) PWSTR, _In_opt_ PFIND_DEBUG_FILE_CALLBACKW, _In_opt_ PVOID)
BOOL(WINAPI * PSYMBOLSERVERPROC)(PCSTR, PCSTR, PVOID, DWORD, DWORD, PSTR)
Definition: dbghelp.h:2328
Definition: typedefs.h:117
struct _MINIDUMP_USER_STREAM_INFORMATION MINIDUMP_USER_STREAM_INFORMATION
struct _MINIDUMP_SYSTEM_INFO::@2695::@2697 DUMMYSTRUCTNAME
IN PVOID IN PVOID IN USHORT IN USHORT Size
Definition: pci.h:359
DWORD64 SystemRangeStart
Definition: compat.h:1037
BOOL WINAPI EnumDirTreeW(_In_opt_ HANDLE, _In_ PCWSTR, _In_ PCWSTR, _Out_writes_opt_(MAX_PATH+1) PWSTR, _In_opt_ PENUMDIRTREE_CALLBACKW, _In_opt_ PVOID)
ULONG SuspendCount
Definition: dbghelp.h:895
ULONG SizeOfImage
Definition: dbghelp.h:822
ULONG Characteristics
Definition: dbghelp.h:106
struct _STACKFRAME64 * LPSTACKFRAME64
struct _IMAGEHLP_MODULE64 IMAGEHLP_MODULE64
BOOL WINAPI SymGetLineFromName64(_In_ HANDLE, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ DWORD, _Out_ PLONG, _Inout_ PIMAGEHLP_LINE64)
union _MINIDUMP_CALLBACK_INPUT::@343 DUMMYUNIONNAME
BOOL WINAPI SymGetSourceFileTokenW(_In_ HANDLE, _In_ ULONG64, _In_ PCWSTR, _Outptr_ PVOID *, _Out_ DWORD *)
DWORD CheckSum
Definition: compat.h:847
struct _MINIDUMP_MODULE_CALLBACK * PMINIDUMP_MODULE_CALLBACK
ULONG CheckSum
Definition: dbghelp.h:823
ULONG Register
Definition: compat.h:696
BOOL SourceIndexed
Definition: compat.h:900
BOOL WINAPI StackWalk(_In_ DWORD, _In_ HANDLE, _In_ HANDLE, _Inout_ LPSTACKFRAME, _Inout_ PVOID, _In_opt_ PREAD_PROCESS_MEMORY_ROUTINE, _In_opt_ PFUNCTION_TABLE_ACCESS_ROUTINE, _In_opt_ PGET_MODULE_BASE_ROUTINE, _In_opt_ PTRANSLATE_ADDRESS_ROUTINE)
PIMAGE_DEBUG_DIRECTORY ReservedDebugDirectory
Definition: dbghelp.h:2290
struct _MINIDUMP_MEMORY_LIST * PMINIDUMP_MEMORY_LIST
ULONG ProcessCreateTime
Definition: dbghelp.h:814
BOOL WINAPI EnumerateLoadedModulesW64(_In_ HANDLE, _In_ PENUMLOADED_MODULES_CALLBACKW64, _In_opt_ PVOID)
struct _IMAGEHLP_CBA_EVENT * PIMAGEHLP_CBA_EVENT
#define _In_
Definition: no_sal2.h:204
MINIDUMP_LOCATION_DESCRIPTOR ThreadContext
Definition: dbghelp.h:776
ULONG Priority
Definition: dbghelp.h:897
BOOL WINAPI SymEnumerateSymbolsW64(_In_ HANDLE, _In_ ULONG64, _In_ PSYM_ENUMSYMBOLS_CALLBACK64W, _In_opt_ PVOID)
MINIDUMP_MEMORY_DESCRIPTOR Stack
Definition: dbghelp.h:899
BOOL WINAPI SymFromTokenW(_In_ HANDLE, _In_ DWORD64, _In_ DWORD, _Inout_ PSYMBOL_INFOW)
WORD Segment
Definition: compat.h:837
DWORD LineNumber
Definition: compat.h:1171
USHORT Reserved
Definition: compat.h:1215
BOOL(CALLBACK * PSYM_ENUMSOURCEFILES_CALLBACK)(_In_ PSOURCEFILE, _In_opt_ PVOID)
Definition: dbghelp.h:1589
BOOL(CALLBACK * PSYMBOL_REGISTERED_CALLBACK64)(_In_ HANDLE, _In_ ULONG, _In_opt_ ULONG64, _In_opt_ ULONG64)
Definition: dbghelp.h:1441
struct _MINIDUMP_MODULE * PMINIDUMP_MODULE
USHORT ProcessorRevision
Definition: dbghelp.h:849
struct _IMAGEHLP_DUPLICATE_SYMBOL * PIMAGEHLP_DUPLICATE_SYMBOL
BOOL WINAPI SymEnumerateModules64(_In_ HANDLE, _In_ PSYM_ENUMMODULES_CALLBACK64, _In_opt_ PVOID)
uint64_t DWORD64
Definition: typedefs.h:65
DWORD NextCallback
Definition: compat.h:1033
struct _IMAGEHLP_DEFERRED_SYMBOL_LOAD64 * PIMAGEHLP_DEFERRED_SYMBOL_LOAD64
struct _IMAGEHLP_LINE64 * PIMAGEHLP_LINE64
struct _MINIDUMP_THREAD_CALLBACK MINIDUMP_THREAD_CALLBACK
BOOL WINAPI SymEnumerateSymbolsW(_In_ HANDLE, _In_ ULONG, _In_ PSYM_ENUMSYMBOLS_CALLBACKW, _In_opt_ PVOID)
BOOL WINAPI SymSearchW(_In_ HANDLE, _In_ ULONG64, _In_opt_ DWORD, _In_opt_ DWORD, _In_opt_ PCWSTR, _In_opt_ DWORD64, _In_ PSYM_ENUMERATESYMBOLS_CALLBACKW, _In_opt_ PVOID, _In_ DWORD)
ULONG TypeIndex
Definition: compat.h:1000
struct _STACKFRAME STACKFRAME
struct _MINIDUMP_STRING MINIDUMP_STRING
PVOID(CALLBACK * PFUNCTION_TABLE_ACCESS_ROUTINE)(_In_ HANDLE, _In_ DWORD)
Definition: dbghelp.h:2413
unsigned short USHORT
Definition: pedump.c:61
BOOL WINAPI SymGetLineFromAddrW(_In_ HANDLE, _In_ DWORD, _Out_ PDWORD, _Out_ PIMAGEHLP_LINEW)
DWORD LineNumber
Definition: compat.h:746
RVA StreamDirectoryRva
Definition: dbghelp.h:784
_In_ UINT _Out_writes_opt_(cch) LPSTR lpszFile
enum _MINIDUMP_TYPE MINIDUMP_TYPE
enum _MINIDUMP_STREAM_TYPE MINIDUMP_STREAM_TYPE
BOOL WINAPI SymSetSearchPath(_In_ HANDLE, _In_opt_ PCSTR)
DWORD64 WINAPI SymLoadModuleExW(_In_ HANDLE, _In_opt_ HANDLE, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_ DWORD64, _In_ DWORD, _In_opt_ PMODLOAD_DATA, _In_opt_ DWORD)
BOOL WINAPI SymAddSymbol(_In_ HANDLE, _In_ ULONG64, _In_ PCSTR, _In_ DWORD64, _In_ DWORD, _In_ DWORD)
PVOID WINAPI ImageDirectoryEntryToDataEx(_In_ PVOID, _In_ BOOLEAN, _In_ USHORT, _Out_ PULONG, _Out_opt_ PIMAGE_SECTION_HEADER *)
Definition: services.c:325
signed char * PSTR
Definition: retypes.h:7
CHAR CVData[MAX_PATH *3]
Definition: compat.h:891
struct _SYMBOL_INFO * PSYMBOL_INFO
struct _MINIDUMP_EXCEPTION_INFORMATION MINIDUMP_EXCEPTION_INFORMATION
BOOL WINAPI SymEnumSourceLinesW(_In_ HANDLE, _In_ ULONG64, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_opt_ DWORD, _In_ DWORD, _In_ PSYM_ENUMLINES_CALLBACKW, _In_opt_ PVOID)
DWORD TimeDateStamp
Definition: compat.h:721
struct MINIDUMP_EXCEPTION_STREAM MINIDUMP_EXCEPTION_STREAM
BOOL(CALLBACK * PSYMBOL_REGISTERED_CALLBACK)(_In_ HANDLE, _In_ ULONG, _In_opt_ PVOID, _In_opt_ PVOID)
Definition: dbghelp.h:2451
PSTR ModuleName
Definition: dbghelp.h:99
DWORD NumSyms
Definition: compat.h:848
UINT_PTR(WINAPI * PSYMBOLSERVERGETOPTIONSPROC)(void)
Definition: dbghelp.h:2335
WCHAR CVData[MAX_PATH *3]
Definition: compat.h:730
unsigned int * PULONG
Definition: retypes.h:1
struct _IMAGEHLP_SYMBOLW * PIMAGEHLP_SYMBOLW
PVOID WINAPI ImageRvaToVa(_In_ PIMAGE_NT_HEADERS, _In_ PVOID, _In_ ULONG, _In_opt_ PIMAGE_SECTION_HEADER *)
struct _MINIDUMP_HEADER * PMINIDUMP_HEADER
struct _IMAGEHLP_SYMBOL64 * PIMAGEHLP_SYMBOL64
DWORD TimeDateStamp
Definition: compat.h:859
ADDRESS64 AddrPC
Definition: compat.h:1042
USHORT ReservedCharacteristics
Definition: dbghelp.h:2267
BOOL WINAPI SymGetSymPrevW(_In_ HANDLE, _Inout_ PIMAGEHLP_SYMBOLW)
struct _IMAGEHLP_CBA_EVENT IMAGEHLP_CBA_EVENT
VOID * PIMAGEHLP_CONTEXT
Definition: dbghelp.h:572
BOOL WINAPI SymFromAddrW(_In_ HANDLE, _In_ DWORD64, _Out_opt_ DWORD64 *, _Inout_ SYMBOL_INFOW *)
struct _MINIDUMP_CALLBACK_INFORMATION MINIDUMP_CALLBACK_INFORMATION
WCHAR LoadedPdbName[256]
Definition: compat.h:728
DWORD * PDWORD
Definition: pedump.c:68
ULONG64 RVA64
Definition: dbghelp.h:595
ULONG64 ExceptionRecord
Definition: dbghelp.h:757
DWORD ReservedOriginalFunctionTableBaseAddress
Definition: dbghelp.h:2292
ADDRESS AddrFrame
Definition: dbghelp.h:2165
struct _STACKFRAME64 STACKFRAME64
BOOL WINAPI SymEnumSourceFilesW(_In_ HANDLE, _In_ ULONG64, _In_opt_ PCWSTR, _In_ PSYM_ENUMSOURCEFILES_CALLBACKW, _In_opt_ PVOID)
BOOL WINAPI SymFromIndex(_In_ HANDLE, _In_ ULONG64, _In_ DWORD, _Inout_ PSYMBOL_INFO)
BOOL WINAPI SymUnloadModule(_In_ HANDLE, _In_ DWORD)
BOOL WINAPI MakeSureDirectoryPathExists(_In_ PCSTR)
BOOL WINAPI SymGetLinePrevW(_In_ HANDLE, _Inout_ PIMAGEHLP_LINEW)
ULONG Register
Definition: compat.h:1008
CHAR ImageName[256]
Definition: compat.h:887
struct _SYMBOL_INFO_PACKAGE SYMBOL_INFO_PACKAGE
ULONG64 Value
Definition: compat.h:694
BOOL WINAPI SymGetSourceFileFromTokenW(_In_ HANDLE, _In_ PVOID, _In_opt_ PCWSTR, _Out_writes_(Size) PWSTR, _In_ DWORD Size)
BOOL WINAPI SymGetLineNextW(_In_ HANDLE, _Inout_ PIMAGEHLP_LINEW)
BOOL WINAPI SymDeleteSymbolW(_In_ HANDLE, _In_ ULONG64, _In_opt_ PCWSTR, _In_ DWORD64, _In_ DWORD)
Definition: name.c:36
BOOL WINAPI SymGetSymPrev64(_In_ HANDLE, _Inout_ PIMAGEHLP_SYMBOL64)
struct _MINIDUMP_STRING * PMINIDUMP_STRING
DWORD RVA
Definition: compat.h:903
ULONG TimeDateStamp
Definition: dbghelp.h:824
BOOL WINAPI SymGetSymNextW(_In_ HANDLE, _Inout_ PIMAGEHLP_SYMBOLW)
BOOL WINAPI SymCleanup(_In_ HANDLE)
PWSTR FileName
Definition: compat.h:1092
struct _MINIDUMP_SYSTEM_INFO * PMINIDUMP_SYSTEM_INFO
BOOL(CALLBACK * PENUMDIRTREE_CALLBACKW)(_In_ PCWSTR, _In_opt_ PVOID)
Definition: dbghelp.h:2050
BOOL WINAPI SymGetSearchPath(_In_ HANDLE, _Out_writes_(SearchPathLength) PSTR, _In_ DWORD SearchPathLength)
BOOL WINAPI SymGetModuleInfoW64(_In_ HANDLE, _In_ DWORD64, _Out_ PIMAGEHLP_MODULEW64)
BOOL Virtual
Definition: dbghelp.h:2170
BOOL WINAPI SymMatchStringA(_In_ PCSTR, _In_ PCSTR, _In_ BOOL)
struct _IMAGEHLP_SYMBOL64 IMAGEHLP_SYMBOL64
unsigned int ULONG
Definition: retypes.h:1
MINIDUMP_CALLBACK_ROUTINE CallbackRoutine
Definition: compat.h:994
uint64_t * PDWORD64
Definition: typedefs.h:65
BOOL WINAPI SymEnumSymbols(_In_ HANDLE, _In_ ULONG64, _In_opt_ PCSTR, _In_ PSYM_ENUMERATESYMBOLS_CALLBACK, _In_opt_ PVOID)
BOOL(WINAPI * PSYMBOLSERVERPROCW)(PCWSTR, PCWSTR, PVOID, DWORD, DWORD, PWSTR)
Definition: dbghelp.h:2330
uint32_t * PULONG_PTR
Definition: typedefs.h:63
PIMAGE_NT_HEADERS WINAPI ImageNtHeader(_In_ PVOID)
enum _IMAGEHLP_SYMBOL_TYPE_INFO IMAGEHLP_SYMBOL_TYPE_INFO
BOOL WINAPI SymRegisterCallbackW64(_In_ HANDLE, _In_ PSYMBOL_REGISTERED_CALLBACK64, _In_ ULONG64)
HANDLE WINAPI FindExecutableImageExW(_In_ PCWSTR, _In_ PCWSTR, _Out_writes_(MAX_PATH+1) PWSTR, _In_opt_ PFIND_EXE_FILE_CALLBACKW, _In_opt_ PVOID)
unsigned __int64 * PULONG64
Definition: imports.h:198
BOOL(CALLBACK * PENUMLOADED_MODULES_CALLBACK64)(_In_ PCSTR, _In_ DWORD64, _In_ ULONG, _In_opt_ PVOID)
Definition: dbghelp.h:977
DWORD64(CALLBACK * PTRANSLATE_ADDRESS_ROUTINE64)(_In_ HANDLE, _In_ HANDLE, _In_ LPADDRESS64)
Definition: dbghelp.h:2211
DWORD ReservedLowestFunctionStartingAddress
Definition: dbghelp.h:2277
BOOL(WINAPI * PSYMBOLSERVERPROCA)(PCSTR, PCSTR, PVOID, DWORD, DWORD, PSTR)
Definition: dbghelp.h:2329
BOOL(CALLBACK * PSYM_ENUMERATESYMBOLS_CALLBACK)(_In_ PSYMBOL_INFO, _In_ ULONG, _In_opt_ PVOID)
Definition: dbghelp.h:1270
#define MAX_SYM_NAME
Definition: dbghelp.h:1117
DWORD Thread
Definition: dbghelp.h:2134
DWORD ReservedHighestFunctionEndingAddress
Definition: dbghelp.h:2278
BOOL WINAPI SymGetSearchPathW(_In_ HANDLE, _Out_writes_(SearchPathLength) PWSTR, _In_ DWORD SearchPathLength)
struct _IMAGEHLP_DEFERRED_SYMBOL_LOAD IMAGEHLP_DEFERRED_SYMBOL_LOAD
struct _IMAGEHLP_DUPLICATE_SYMBOL IMAGEHLP_DUPLICATE_SYMBOL
const char * PCSTR
Definition: typedefs.h:51