2 * imagehlp.h - Declarations for IMAGEHLP
5 #ifndef __WINE_IMAGEHLP_H
6 #define __WINE_IMAGEHLP_H
11 /***********************************************************************
15 #define ANYSIZE_ARRAY 1 /* FIXME: Move to wintypes.h */
17 typedef unsigned char UCHAR; /* FIXME: Move to wintypes.h */
18 typedef UCHAR *PUCHAR; /* FIXME: Move to wintypes.h */
19 typedef CHAR *PCHAR; /* FIXME: Move to wintypes.h */
20 typedef unsigned char boolean; /* FIXME: Move to wintypes.h */
21 typedef boolean BOOLEAN; /* FIXME: Move to wintypes.h */
22 typedef void *PVOID; /* FIXME: Move to wintypes.h */
23 typedef DWORD *PDWORD; /* FIXME: Move to wintypes.h */
24 typedef BYTE *PBYTE; /* FIXME: Move to wintypes.h */
25 typedef ULONG *PULONG; /* FIXME: Move to wintypes.h */
26 typedef unsigned short USHORT; /* FIXME: Move to wintypes.h */
27 typedef const void *PCVOID; /* FIXME: Move to wintypes.h */
28 typedef UINT32 *PUINT32; /* FIXME: Move to wintypes.h */
30 typedef struct _LIST_ENTRY32 {
31 struct _LIST_ENTRY32 *Flink;
32 struct _LIST_ENTRY32 *Blink;
33 } LIST_ENTRY32, *PLIST_ENTRY32; /* FIXME: Move to wintypes.h */
35 typedef struct _SINGLE_LIST_ENTRY32 {
36 struct _SINGLE_LIST_ENTRY32 *Next;
37 } SINGLE_LIST_ENTRY32, *PSINGLE_LIST_ENTRY32; /* FIXME: Move to wintypes.h */
39 /* FIXME: Move to wintypes.h */
40 #define FIELD_OFFSET(type, field) \
41 ((LONG)(INT32)&(((type *)0)->field))
43 /* FIXME: Move to wintypes.h */
44 #define CONTAINING_RECORD(address, type, field) \
45 ((type *)((PCHAR)(address) - (PCHAR)(&((type *)0)->field)))
47 typedef PVOID DIGEST_HANDLE32;
49 /***********************************************************************
53 typedef enum _IMAGEHLP_STATUS_REASON32 {
57 BindImportModuleFailed,
58 BindImportProcedureFailed,
64 BindExpandFileHeaders,
66 BindMismatchedSymbols,
68 } IMAGEHLP_STATUS_REASON32;
70 #define BIND_NO_BOUND_IMPORTS 0x00000001
71 #define BIND_NO_UPDATE 0x00000002
72 #define BIND_ALL_IMAGES 0x00000004
73 #define BIND_CACHE_IMPORT_DLLS 0x00000008
75 #define CERT_PE_IMAGE_DIGEST_DEBUG_INFO 0x01
76 #define CERT_PE_IMAGE_DIGEST_RESOURCES 0x02
77 #define CERT_PE_IMAGE_DIGEST_ALL_IMPORT_INFO 0x04
78 #define CERT_PE_IMAGE_DIGEST_NON_PE_INFO 0x08
80 #define CERT_SECTION_TYPE_ANY 0xFF
82 #define WIN_CERT_REVISION_1_0 0x0100
83 #define WIN_CERT_REVISION_2_0 0x0200
85 #define WIN_CERT_TYPE_X509 0x0001 /* X.509 Certificate */
86 #define WIN_CERT_TYPE_PKCS_SIGNED_DATA 0x0002 /* PKCS SignedData */
87 #define WIN_CERT_TYPE_RESERVED_1 0x0003 /* Reserved */
89 #define SPLITSYM_REMOVE_PRIVATE 0x00000001
90 #define SPLITSYM_EXTRACT_ALL 0x00000002
91 #define SPLITSYM_SYMBOLPATH_IS_SRC 0x00000004
93 #define IMAGE_DEBUG_TYPE_UNKNOWN 0
94 #define IMAGE_DEBUG_TYPE_COFF 1
95 #define IMAGE_DEBUG_TYPE_CODEVIEW 2
96 #define IMAGE_DEBUG_TYPE_FPO 3
97 #define IMAGE_DEBUG_TYPE_MISC 4
98 #define IMAGE_DEBUG_TYPE_EXCEPTION 5
99 #define IMAGE_DEBUG_TYPE_FIXUP 6
100 #define IMAGE_DEBUG_TYPE_OMAP_TO_SRC 7
101 #define IMAGE_DEBUG_TYPE_OMAP_FROM_SRC 8
102 #define IMAGE_DEBUG_TYPE_BORLAND 9
103 #define IMAGE_DEBUG_TYPE_RESERVED10 10
108 #define FRAME_NONFPO 3
110 #define CHECKSUM_SUCCESS 0
111 #define CHECKSUM_OPEN_FAILURE 1
112 #define CHECKSUM_MAP_FAILURE 2
113 #define CHECKSUM_MAPVIEW_FAILURE 3
114 #define CHECKSUM_UNICODE_FAILURE 4
116 typedef enum _ADRESS_MODE32 {
123 #define SYMOPT_CASE_INSENSITIVE 0x00000001
124 #define SYMOPT_UNDNAME 0x00000002
125 #define SYMOPT_DEFERRED_LOADS 0x00000004
126 #define SYMOPT_NO_CPP 0x00000008
127 #define SYMOPT_LOAD_LINES 0x00000010
128 #define SYMOPT_OMAP_FIND_NEAREST 0x00000020
130 #define SYMF_OMAP_GENERATED 0x00000001
131 #define SYMF_OMAP_MODIFIED 0x00000002
133 typedef enum _SYM_TYPE32 {
140 SymSym /* .sym file */
143 #define UNDNAME_COMPLETE 0x0000
144 #define UNDNAME_NO_LEADING_UNDERSCORES 0x0001
145 #define UNDNAME_NO_MS_KEYWORDS 0x0002
146 #define UNDNAME_NO_FUNCTION_RETURNS 0x0004
147 #define UNDNAME_NO_ALLOCATION_MODEL 0x0008
148 #define UNDNAME_NO_ALLOCATION_LANGUAGE 0x0010
149 #define UNDNAME_NO_MS_THISTYPE 0x0020
150 #define UNDNAME_NO_CV_THISTYPE 0x0040
151 #define UNDNAME_NO_THISTYPE 0x0060
152 #define UNDNAME_NO_ACCESS_SPECIFIERS 0x0080
153 #define UNDNAME_NO_THROW_SIGNATURES 0x0100
154 #define UNDNAME_NO_MEMBER_TYPE 0x0200
155 #define UNDNAME_NO_RETURN_UDT_MODEL 0x0400
156 #define UNDNAME_32_BIT_DECODE 0x0800
157 #define UNDNAME_NAME_ONLY 0x1000
158 #define UNDNAME_NO_ARGUMENTS 0x2000
159 #define UNDNAME_NO_SPECIAL_SYMS 0x4000
161 #define CBA_DEFERRED_SYMBOL_LOAD_START 0x00000001
162 #define CBA_DEFERRED_SYMBOL_LOAD_COMPLETE 0x00000002
163 #define CBA_DEFERRED_SYMBOL_LOAD_FAILURE 0x00000003
164 #define CBA_SYMBOLS_UNLOADED 0x00000004
165 #define CBA_DUPLICATE_SYMBOL 0x00000005
167 #define IMAGE_DOS_SIGNATURE 0x5A4D /* MZ */
168 #define IMAGE_OS2_SIGNATURE 0x454E /* NE */
169 #define IMAGE_OS2_SIGNATURE_LE 0x454C /* LE */
170 #define IMAGE_VXD_SIGNATURE 0x454C /* LE */
171 #define IMAGE_NT_SIGNATURE 0x00004550 /* PE00 */
173 /***********************************************************************
177 typedef struct _IMAGE_DATA_DIRECTORY32 {
178 DWORD VirtualAddress;
180 } IMAGE_DATA_DIRECTORY32, *PIMAGE_DATA_DIRECTORY32;
182 #define IMAGE_NUMBEROF_DIRECTORY_ENTRIES 16
184 typedef struct _IMAGE_OPTIONAL_HEADER32 {
186 /* Standard fields */
189 BYTE MajorLinkerVersion;
190 BYTE MinorLinkerVersion;
192 DWORD SizeOfInitializedData;
193 DWORD SizeOfUninitializedData;
194 DWORD AddressOfEntryPoint;
198 /* NT additional fields */
201 DWORD SectionAlignment;
203 WORD MajorOperatingSystemVersion;
204 WORD MinorOperatingSystemVersion;
205 WORD MajorImageVersion;
206 WORD MinorImageVersion;
207 WORD MajorSubsystemVersion;
208 WORD MinorSubsystemVersion;
209 DWORD Win32VersionValue;
214 WORD DllCharacteristics;
215 DWORD SizeOfStackReserve;
216 DWORD SizeOfStackCommit;
217 DWORD SizeOfHeapReserve;
218 DWORD SizeOfHeapCommit;
220 DWORD NumberOfRvaAndSizes;
221 IMAGE_DATA_DIRECTORY32 DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES];
222 } IMAGE_OPTIONAL_HEADER32, *PIMAGE_OPTIONAL_HEADER32;
224 typedef struct _IMAGE_FILE_HEADER32 {
226 WORD NumberOfSections;
228 DWORD PointerToSymbolTable;
229 DWORD NumberOfSymbols;
230 WORD SizeOfOptionalHeader;
231 WORD Characteristics;
232 } IMAGE_FILE_HEADER32, *PIMAGE_FILE_HEADER32;
234 typedef struct _IMAGE_NT_HEADERS32 {
236 IMAGE_FILE_HEADER32 FileHeader;
237 IMAGE_OPTIONAL_HEADER32 OptionalHeader;
238 } IMAGE_NT_HEADERS32, *PIMAGE_NT_HEADERS32;
240 #define IMAGE_SIZEOF_SHORT_NAME 8
242 typedef struct _IMAGE_SECTION_HEADER32 {
243 BYTE Name[IMAGE_SIZEOF_SHORT_NAME];
245 DWORD PhysicalAddress;
248 DWORD VirtualAddress;
250 DWORD PointerToRawData;
251 DWORD PointerToRelocations;
252 DWORD PointerToLinenumbers;
253 WORD NumberOfRelocations;
254 WORD NumberOfLinenumbers;
255 DWORD Characteristics;
256 } IMAGE_SECTION_HEADER32, *PIMAGE_SECTION_HEADER32;
258 typedef struct _LOADED_IMAGE32 {
261 PUCHAR MappedAddress;
262 PIMAGE_NT_HEADERS32 FileHeader;
263 PIMAGE_SECTION_HEADER32 LastRvaSection;
264 ULONG NumberOfSections;
265 PIMAGE_SECTION_HEADER32 Sections;
266 ULONG Characteristics;
267 BOOLEAN fSystemImage;
271 } LOADED_IMAGE32, *PLOADED_IMAGE32;
273 typedef struct _IMAGE_LOAD_CONFIG_DIRECTORY32 {
274 DWORD Characteristics;
278 DWORD GlobalFlagsClear;
279 DWORD GlobalFlagsSet;
280 DWORD CriticalSectionDefaultTimeout;
281 DWORD DeCommitFreeBlockThreshold;
282 DWORD DeCommitTotalFreeThreshold;
283 PVOID LockPrefixTable;
284 DWORD MaximumAllocationSize;
285 DWORD VirtualMemoryThreshold;
286 DWORD ProcessHeapFlags;
287 DWORD ProcessAffinityMask;
292 } IMAGE_LOAD_CONFIG_DIRECTORY32, *PIMAGE_LOAD_CONFIG_DIRECTORY32;
294 typedef struct _WIN_CERTIFICATE32 {
296 WORD wRevision; /* WIN_CERT_REVISON_xxx */
297 WORD wCertificateType; /* WIN_CERT_TYPE_xxx */
298 BYTE bCertificate[ANYSIZE_ARRAY];
299 } WIN_CERTIFICATE32, *PWIN_CERTIFICATE32;
301 typedef struct _API_VERSION32 {
306 } API_VERSION32, *PAPI_VERSION32;
308 typedef struct _IMAGE_FUNCTION_ENTRY32 {
309 DWORD StartingAddress;
312 } IMAGE_FUNCTION_ENTRY32, *PIMAGE_FUNCTION_ENTRY32;
314 typedef struct _IMAGE_DEBUG_DIRECTORY32 {
315 DWORD Characteristics;
321 DWORD AddressOfRawData;
322 DWORD PointerToRawData;
323 } IMAGE_DEBUG_DIRECTORY32, *PIMAGE_DEBUG_DIRECTORY32;
325 typedef struct _IMAGE_COFF_SYMBOLS_HEADER32 {
326 DWORD NumberOfSymbols;
327 DWORD LvaToFirstSymbol;
328 DWORD NumberOfLinenumbers;
329 DWORD LvaToFirstLinenumber;
330 DWORD RvaToFirstByteOfCode;
331 DWORD RvaToLastByteOfCode;
332 DWORD RvaToFirstByteOfData;
333 DWORD RvaToLastByteOfData;
334 } IMAGE_COFF_SYMBOLS_HEADER32, *PIMAGE_COFF_SYMBOLS_HEADER32;
336 typedef struct _FPO_DATA32 {
347 } FPO_DATA32, *PFPO_DATA32;
349 typedef struct _IMAGE_DEBUG_INFORMATION32 {
354 USHORT Characteristics;
359 DWORD NumberOfSections;
360 PIMAGE_SECTION_HEADER32 Sections;
362 DWORD ExportedNamesSize;
365 DWORD NumberOfFunctionTableEntries;
366 PIMAGE_FUNCTION_ENTRY32 FunctionTableEntries;
367 DWORD LowestFunctionStartingAddress;
368 DWORD HighestFunctionEndingAddress;
370 DWORD NumberOfFpoTableEntries;
371 PFPO_DATA32 FpoTableEntries;
373 DWORD SizeOfCoffSymbols;
374 PIMAGE_COFF_SYMBOLS_HEADER32 CoffSymbols;
376 DWORD SizeOfCodeViewSymbols;
377 PVOID CodeViewSymbols;
386 PIMAGE_DEBUG_DIRECTORY32 DebugDirectory;
387 DWORD NumberOfDebugDirectories;
390 } IMAGE_DEBUG_INFORMATION32, *PIMAGE_DEBUG_INFORMATION32;
392 typedef struct _ADDRESS32 {
396 } ADDRESS32, *PADDRESS32;
398 typedef struct _KDHELP32 {
400 DWORD ThCallbackStack;
403 DWORD KiCallUserMode;
404 DWORD KeUserCallbackDispatcher;
405 DWORD SystemRangeStart;
406 } KDHELP32, *PKDHELP32;
408 typedef struct _STACKFRAME32 {
410 ADDRESS32 AddrReturn;
413 PVOID FuncTableEntry;
419 } STACKFRAME32, *PSTACKFRAME32;
421 typedef struct _IMAGEHLP_SYMBOL32 {
427 CHAR Name[ANYSIZE_ARRAY];
428 } IMAGEHLP_SYMBOL32, *PIMAGEHLP_SYMBOL32;
430 typedef struct _IMAGEHLP_MODULE32 {
440 CHAR LoadedImageName[256];
441 } IMAGEHLP_MODULE32, *PIMAGEHLP_MODULE32;
443 typedef struct _IMAGEHLP_LINE32 {
449 } IMAGEHLP_LINE32, *PIMAGEHLP_LINE32;
451 typedef struct _IMAGEHLP_DEFERRED_SYMBOL_LOAD32 {
456 CHAR FileName[MAX_PATH];
458 } IMAGEHLP_DEFERRED_SYMBOL_LOAD32, *PIMAGEHLP_DEFERRED_SYMBOL_LOAD32;
460 typedef struct _IMAGEHLP_DUPLICATE_SYMBOL32 {
463 PIMAGEHLP_SYMBOL32 Symbol;
464 ULONG SelectedSymbol;
465 } IMAGEHLP_DUPLICATE_SYMBOL32, *PIMAGEHLP_DUPLICATE_SYMBOL32;
467 typedef struct _IMAGE_DOS_HEADER32 {
487 } IMAGE_DOS_HEADER32, *PIMAGE_DOS_HEADER32;
489 typedef struct _IMAGE_OS2_HEADER32 {
517 WORD ne_psegrefbytes;
520 } IMAGE_OS2_HEADER32, *PIMAGE_OS2_HEADER32;
522 typedef struct _IMAGE_VXD_HEADER32 {
537 DWORD e32_lastpagesize;
566 DWORD e32_instpreload;
567 DWORD e32_instdemand;
574 } IMAGE_VXD_HEADER32, *PIMAGE_VXD_HEADER32;
576 /***********************************************************************
580 typedef BOOL32 (CALLBACK *PIMAGEHLP_STATUS_ROUTINE32)(
581 IMAGEHLP_STATUS_REASON32 Reason, LPSTR ImageName, LPSTR DllName,
582 ULONG Va, ULONG Parameter
585 typedef BOOL32 (CALLBACK *PSYM_ENUMMODULES_CALLBACK32)(
586 LPSTR ModuleName, ULONG BaseOfDll, PVOID UserContext
589 typedef BOOL32 (CALLBACK *PSYM_ENUMSYMBOLS_CALLBACK32)(
590 LPSTR SymbolName, ULONG SymbolAddress, ULONG SymbolSize,
594 typedef BOOL32 (CALLBACK *PENUMLOADED_MODULES_CALLBACK32)(
595 LPSTR ModuleName, ULONG ModuleBase, ULONG ModuleSize,
599 typedef BOOL32 (CALLBACK *PSYMBOL_REGISTERED_CALLBACK32)(
600 HANDLE32 hProcess, ULONG ActionCode, PVOID CallbackData,
604 typedef BOOL32 (CALLBACK *DIGEST_FUNCTION32)(
605 DIGEST_HANDLE32 refdata, PBYTE pData, DWORD dwLength
608 typedef BOOL32 (CALLBACK *PREAD_PROCESS_MEMORY_ROUTINE32)(
609 HANDLE32 hProcess, PCVOID lpBaseAddress, PVOID lpBuffer,
610 DWORD nSize, PDWORD lpNumberOfBytesRead
613 typedef PVOID (CALLBACK *PFUNCTION_TABLE_ACCESS_ROUTINE32)(
614 HANDLE32 hProcess, DWORD AddrBase
617 typedef DWORD (CALLBACK *PGET_MODULE_BASE_ROUTINE32)(
618 HANDLE32 hProcess, DWORD ReturnAddress);
620 typedef DWORD (CALLBACK *PTRANSLATE_ADDRESS_ROUTINE32)(
621 HANDLE32 hProcess, HANDLE32 hThread, PADDRESS32 lpaddr
624 /***********************************************************************
628 BOOL32 WINAPI BindImage32(
629 LPSTR ImageName, LPSTR DllPath, LPSTR SymbolPath
631 BOOL32 WINAPI BindImageEx32(
632 DWORD Flags, LPSTR ImageName, LPSTR DllPath, LPSTR SymbolPath,
633 PIMAGEHLP_STATUS_ROUTINE32 StatusRoutine
635 PIMAGE_NT_HEADERS32 WINAPI CheckSumMappedFile32(
636 LPVOID BaseAddress, DWORD FileLength,
637 LPDWORD HeaderSum, LPDWORD CheckSum
639 BOOL32 WINAPI EnumerateLoadedModules32(
641 PENUMLOADED_MODULES_CALLBACK32 EnumLoadedModulesCallback,
644 HANDLE32 WINAPI FindDebugInfoFile32(
645 LPSTR FileName, LPSTR SymbolPath, LPSTR DebugFilePath
647 HANDLE32 WINAPI FindExecutableImage32(
648 LPSTR FileName, LPSTR SymbolPath, LPSTR ImageFilePath
650 BOOL32 WINAPI GetImageConfigInformation32(
651 PLOADED_IMAGE32 LoadedImage,
652 PIMAGE_LOAD_CONFIG_DIRECTORY32 ImageConfigInformation
654 DWORD WINAPI GetImageUnusedHeaderBytes32(
655 PLOADED_IMAGE32 LoadedImage,
656 LPDWORD SizeUnusedHeaderBytes
658 DWORD WINAPI GetTimestampForLoadedLibrary32(
661 BOOL32 WINAPI ImageAddCertificate32(
662 HANDLE32 FileHandle, PWIN_CERTIFICATE32 Certificate, PDWORD Index
664 PVOID WINAPI ImageDirectoryEntryToData32(
665 PVOID Base, BOOLEAN MappedAsImage, USHORT DirectoryEntry, PULONG Size
667 BOOL32 WINAPI ImageEnumerateCertificates32(
668 HANDLE32 FileHandle, WORD TypeFilter, PDWORD CertificateCount,
669 PDWORD Indices, DWORD IndexCount
671 BOOL32 WINAPI ImageGetCertificateData32(
672 HANDLE32 FileHandle, DWORD CertificateIndex,
673 PWIN_CERTIFICATE32 Certificate, PDWORD RequiredLength
675 BOOL32 WINAPI ImageGetCertificateHeader32(
676 HANDLE32 FileHandle, DWORD CertificateIndex,
677 PWIN_CERTIFICATE32 Certificateheader
679 BOOL32 WINAPI ImageGetDigestStream32(
680 HANDLE32 FileHandle, DWORD DigestLevel,
681 DIGEST_FUNCTION32 DigestFunction, DIGEST_HANDLE32 DigestHandle
683 PLOADED_IMAGE32 WINAPI ImageLoad32(
684 LPSTR DllName, LPSTR DllPath
686 PIMAGE_NT_HEADERS32 WINAPI ImageNtHeader32(
689 BOOL32 WINAPI ImageRemoveCertificate32(
690 HANDLE32 FileHandle, DWORD Index
692 PIMAGE_SECTION_HEADER32 WINAPI ImageRvaToSection32(
693 PIMAGE_NT_HEADERS32 NtHeaders, PVOID Base, ULONG Rva
695 PVOID WINAPI ImageRvaToVa32(
696 PIMAGE_NT_HEADERS32 NtHeaders, PVOID Base, ULONG Rva,
697 PIMAGE_SECTION_HEADER32 *LastRvaSection
699 BOOL32 WINAPI ImageUnload32(
700 PLOADED_IMAGE32 LoadedImage
702 PAPI_VERSION32 WINAPI ImagehlpApiVersion32(
704 PAPI_VERSION32 WINAPI ImagehlpApiVersionEx32(
705 PAPI_VERSION32 AppVersion
707 BOOL32 WINAPI MakeSureDirectoryPathExists32(
710 BOOL32 WINAPI MapAndLoad32(
711 LPSTR ImageName, LPSTR DllPath, PLOADED_IMAGE32 LoadedImage,
712 BOOL32 DotDll, BOOL32 ReadOnly
714 PIMAGE_DEBUG_INFORMATION32 WINAPI MapDebugInformation32(
715 HANDLE32 FileHandle, LPSTR FileName,
716 LPSTR SymbolPath, DWORD ImageBase
718 DWORD WINAPI MapFileAndCheckSum32A(
719 LPSTR Filename, LPDWORD HeaderSum, LPDWORD CheckSum
721 DWORD WINAPI MapFileAndCheckSum32W(
722 LPWSTR Filename, LPDWORD HeaderSum, LPDWORD CheckSum
724 BOOL32 WINAPI ReBaseImage32(
725 LPSTR CurrentImageName, LPSTR SymbolPath, BOOL32 fReBase,
726 BOOL32 fRebaseSysfileOk, BOOL32 fGoingDown, ULONG CheckImageSize,
727 ULONG *OldImageSize, ULONG *OldImageBase, ULONG *NewImageSize,
728 ULONG *NewImageBase, ULONG TimeStamp
730 BOOL32 WINAPI RemovePrivateCvSymbolic32(
731 PCHAR DebugData, PCHAR *NewDebugData, ULONG *NewDebugSize
733 VOID WINAPI RemoveRelocations32(
736 BOOL32 WINAPI SearchTreeForFile32(
737 LPSTR RootPath, LPSTR InputPathName, LPSTR OutputPathBuffer
739 BOOL32 WINAPI SetImageConfigInformation32(
740 PLOADED_IMAGE32 LoadedImage,
741 PIMAGE_LOAD_CONFIG_DIRECTORY32 ImageConfigInformation
743 BOOL32 WINAPI SplitSymbols32(
744 LPSTR ImageName, LPSTR SymbolsPath,
745 LPSTR SymbolFilePath, DWORD Flags
747 BOOL32 WINAPI StackWalk32(
748 DWORD MachineType, HANDLE32 hProcess, HANDLE32 hThread,
749 PSTACKFRAME32 StackFrame, PVOID ContextRecord,
750 PREAD_PROCESS_MEMORY_ROUTINE32 ReadMemoryRoutine,
751 PFUNCTION_TABLE_ACCESS_ROUTINE32 FunctionTableAccessRoutine,
752 PGET_MODULE_BASE_ROUTINE32 GetModuleBaseRoutine,
753 PTRANSLATE_ADDRESS_ROUTINE32 TranslateAddress
755 BOOL32 WINAPI SymCleanup32(
758 BOOL32 WINAPI SymEnumerateModules32(
759 HANDLE32 hProcess, PSYM_ENUMMODULES_CALLBACK32 EnumModulesCallback,
762 BOOL32 WINAPI SymEnumerateSymbols32(
763 HANDLE32 hProcess, DWORD BaseOfDll,
764 PSYM_ENUMSYMBOLS_CALLBACK32 EnumSymbolsCallback, PVOID UserContext
766 PVOID WINAPI SymFunctionTableAccess32(
767 HANDLE32 hProcess, DWORD AddrBase
769 DWORD WINAPI SymGetModuleBase32(
770 HANDLE32 hProcess, DWORD dwAddr
772 BOOL32 WINAPI SymGetModuleInfo32(
773 HANDLE32 hProcess, DWORD dwAddr,
774 PIMAGEHLP_MODULE32 ModuleInfo
776 DWORD WINAPI SymGetOptions32(
778 BOOL32 WINAPI SymGetSearchPath32(
779 HANDLE32 hProcess, LPSTR szSearchPath, DWORD SearchPathLength
781 BOOL32 WINAPI SymGetSymFromAddr32(
782 HANDLE32 hProcess, DWORD dwAddr,
783 PDWORD pdwDisplacement, PIMAGEHLP_SYMBOL32 Symbol
785 BOOL32 WINAPI SymGetSymFromName32(
786 HANDLE32 hProcess, LPSTR Name, PIMAGEHLP_SYMBOL32 Symbol
788 BOOL32 WINAPI SymGetSymNext32(
789 HANDLE32 hProcess, PIMAGEHLP_SYMBOL32 Symbol
791 BOOL32 WINAPI SymGetSymPrev32(
792 HANDLE32 hProcess, PIMAGEHLP_SYMBOL32 Symbol
794 BOOL32 WINAPI SymInitialize32(
795 HANDLE32 hProcess, LPSTR UserSearchPath, BOOL32 fInvadeProcess
797 BOOL32 WINAPI SymLoadModule32(
798 HANDLE32 hProcess, HANDLE32 hFile, LPSTR ImageName, LPSTR ModuleName,
799 DWORD BaseOfDll, DWORD SizeOfDll
801 BOOL32 WINAPI SymRegisterCallback32(
802 HANDLE32 hProcess, PSYMBOL_REGISTERED_CALLBACK32 CallbackFunction,
805 DWORD WINAPI SymSetOptions32(
808 BOOL32 WINAPI SymSetSearchPath32(
809 HANDLE32 hProcess, LPSTR szSearchPath
811 BOOL32 WINAPI SymUnDName32(
812 PIMAGEHLP_SYMBOL32 sym, LPSTR UnDecName, DWORD UnDecNameLength
814 BOOL32 WINAPI SymUnloadModule32(
815 HANDLE32 hProcess, DWORD BaseOfDll
817 BOOL32 WINAPI TouchFileTimes32(
818 HANDLE32 FileHandle, LPSYSTEMTIME lpSystemTime
820 DWORD WINAPI UnDecorateSymbolName32(
821 LPCSTR DecoratedName, LPSTR UnDecoratedName,
822 DWORD UndecoratedLength, DWORD Flags
824 BOOL32 WINAPI UnMapAndLoad32(
825 PLOADED_IMAGE32 LoadedImage
827 BOOL32 WINAPI UnmapDebugInformation32(
828 PIMAGE_DEBUG_INFORMATION32 DebugInfo
830 BOOL32 WINAPI UpdateDebugInfoFile32(
831 LPSTR ImageFileName, LPSTR SymbolPath,
832 LPSTR DebugFilePath, PIMAGE_NT_HEADERS32 NtHeaders
834 BOOL32 WINAPI UpdateDebugInfoFileEx32(
835 LPSTR ImageFileName, LPSTR SymbolPath, LPSTR DebugFilePath,
836 PIMAGE_NT_HEADERS32 NtHeaders, DWORD OldChecksum
839 /***********************************************************************
843 extern HANDLE32 IMAGEHLP_hHeap32;
845 #endif /* __WINE_IMAGEHLP_H */