source: trunk/include/win/imagehlp.h@ 8082

Last change on this file since 8082 was 7985, checked in by sandervl, 24 years ago

header updates

File size: 17.3 KB
Line 
1/* $Id: imagehlp.h,v 1.2 2002-02-21 22:59:08 sandervl Exp $ */
2
3/*
4 * imagehlp.h - Declarations for IMAGEHLP
5 */
6
7#ifndef __WINE_IMAGEHLP_H
8#define __WINE_IMAGEHLP_H
9
10#include "windef.h"
11#include "winbase.h"
12
13/***********************************************************************
14 * Types
15 */
16
17typedef PVOID DIGEST_HANDLE;
18
19/***********************************************************************
20 * Enums/Defines
21 */
22
23typedef enum _IMAGEHLP_STATUS_REASON {
24 BindOutOfMemory,
25 BindRvaToVaFailed,
26 BindNoRoomInImage,
27 BindImportModuleFailed,
28 BindImportProcedureFailed,
29 BindImportModule,
30 BindImportProcedure,
31 BindForwarder,
32 BindForwarderNOT,
33 BindImageModified,
34 BindExpandFileHeaders,
35 BindImageComplete,
36 BindMismatchedSymbols,
37 BindSymbolsNotUpdated
38} IMAGEHLP_STATUS_REASON;
39
40#define BIND_NO_BOUND_IMPORTS 0x00000001
41#define BIND_NO_UPDATE 0x00000002
42#define BIND_ALL_IMAGES 0x00000004
43#define BIND_CACHE_IMPORT_DLLS 0x00000008
44
45#define CERT_PE_IMAGE_DIGEST_DEBUG_INFO 0x01
46#define CERT_PE_IMAGE_DIGEST_RESOURCES 0x02
47#define CERT_PE_IMAGE_DIGEST_ALL_IMPORT_INFO 0x04
48#define CERT_PE_IMAGE_DIGEST_NON_PE_INFO 0x08
49
50#define CERT_SECTION_TYPE_ANY 0xFF
51
52#define WIN_CERT_REVISION_1_0 0x0100
53#define WIN_CERT_REVISION_2_0 0x0200
54
55#define WIN_CERT_TYPE_X509 0x0001 /* X.509 Certificate */
56#define WIN_CERT_TYPE_PKCS_SIGNED_DATA 0x0002 /* PKCS SignedData */
57#define WIN_CERT_TYPE_RESERVED_1 0x0003 /* Reserved */
58
59#define SPLITSYM_REMOVE_PRIVATE 0x00000001
60#define SPLITSYM_EXTRACT_ALL 0x00000002
61#define SPLITSYM_SYMBOLPATH_IS_SRC 0x00000004
62
63#define IMAGE_DEBUG_TYPE_UNKNOWN 0
64#define IMAGE_DEBUG_TYPE_COFF 1
65#define IMAGE_DEBUG_TYPE_CODEVIEW 2
66#define IMAGE_DEBUG_TYPE_FPO 3
67#define IMAGE_DEBUG_TYPE_MISC 4
68#define IMAGE_DEBUG_TYPE_EXCEPTION 5
69#define IMAGE_DEBUG_TYPE_FIXUP 6
70#define IMAGE_DEBUG_TYPE_OMAP_TO_SRC 7
71#define IMAGE_DEBUG_TYPE_OMAP_FROM_SRC 8
72#define IMAGE_DEBUG_TYPE_BORLAND 9
73#define IMAGE_DEBUG_TYPE_RESERVED10 10
74
75#define FRAME_FPO 0
76#define FRAME_TRAP 1
77#define FRAME_TSS 2
78#define FRAME_NONFPO 3
79
80#define CHECKSUM_SUCCESS 0
81#define CHECKSUM_OPEN_FAILURE 1
82#define CHECKSUM_MAP_FAILURE 2
83#define CHECKSUM_MAPVIEW_FAILURE 3
84#define CHECKSUM_UNICODE_FAILURE 4
85
86typedef enum _ADRESS_MODE {
87 AddrMode1616,
88 AddrMode1632,
89 AddrModeReal,
90 AddrModeFlat
91} ADDRESS_MODE;
92
93#define SYMOPT_CASE_INSENSITIVE 0x00000001
94#define SYMOPT_UNDNAME 0x00000002
95#define SYMOPT_DEFERRED_LOADS 0x00000004
96#define SYMOPT_NO_CPP 0x00000008
97#define SYMOPT_LOAD_LINES 0x00000010
98#define SYMOPT_OMAP_FIND_NEAREST 0x00000020
99
100#define SYMF_OMAP_GENERATED 0x00000001
101#define SYMF_OMAP_MODIFIED 0x00000002
102
103typedef enum _SYM_TYPE {
104 SymNone,
105 SymCoff,
106 SymCv,
107 SymPdb,
108 SymExport,
109 SymDeferred,
110 SymSym /* .sym file */
111} SYM_TYPE32;
112
113#define UNDNAME_COMPLETE 0x0000
114#define UNDNAME_NO_LEADING_UNDERSCORES 0x0001
115#define UNDNAME_NO_MS_KEYWORDS 0x0002
116#define UNDNAME_NO_FUNCTION_RETURNS 0x0004
117#define UNDNAME_NO_ALLOCATION_MODEL 0x0008
118#define UNDNAME_NO_ALLOCATION_LANGUAGE 0x0010
119#define UNDNAME_NO_MS_THISTYPE 0x0020
120#define UNDNAME_NO_CV_THISTYPE 0x0040
121#define UNDNAME_NO_THISTYPE 0x0060
122#define UNDNAME_NO_ACCESS_SPECIFIERS 0x0080
123#define UNDNAME_NO_THROW_SIGNATURES 0x0100
124#define UNDNAME_NO_MEMBER_TYPE 0x0200
125#define UNDNAME_NO_RETURN_UDT_MODEL 0x0400
126#define UNDNAME_32_BIT_DECODE 0x0800
127#define UNDNAME_NAME_ONLY 0x1000
128#define UNDNAME_NO_ARGUMENTS 0x2000
129#define UNDNAME_NO_SPECIAL_SYMS 0x4000
130
131#define CBA_DEFERRED_SYMBOL_LOAD_START 0x00000001
132#define CBA_DEFERRED_SYMBOL_LOAD_COMPLETE 0x00000002
133#define CBA_DEFERRED_SYMBOL_LOAD_FAILURE 0x00000003
134#define CBA_SYMBOLS_UNLOADED 0x00000004
135#define CBA_DUPLICATE_SYMBOL 0x00000005
136
137#define IMAGE_DOS_SIGNATURE 0x5A4D /* MZ */
138#define IMAGE_OS2_SIGNATURE 0x454E /* NE */
139#define IMAGE_OS2_SIGNATURE_LE 0x454C /* LE */
140#define IMAGE_VXD_SIGNATURE 0x454C /* LE */
141#define IMAGE_NT_SIGNATURE 0x00004550 /* PE00 */
142
143/***********************************************************************
144 * Structures
145 */
146
147
148#define IMAGE_NUMBEROF_DIRECTORY_ENTRIES 16
149
150
151typedef struct _LOADED_IMAGE {
152 LPSTR ModuleName;
153 HANDLE hFile;
154 PUCHAR MappedAddress;
155 PIMAGE_NT_HEADERS FileHeader;
156 PIMAGE_SECTION_HEADER LastRvaSection;
157 ULONG NumberOfSections;
158 PIMAGE_SECTION_HEADER Sections;
159 ULONG Characteristics;
160 BOOLEAN fSystemImage;
161 BOOLEAN fDOSImage;
162 LIST_ENTRY Links;
163 ULONG SizeOfImage;
164} LOADED_IMAGE, *PLOADED_IMAGE;
165
166
167typedef struct _WIN_CERTIFICATE {
168 DWORD dwLength;
169 WORD wRevision; /* WIN_CERT_REVISON_xxx */
170 WORD wCertificateType; /* WIN_CERT_TYPE_xxx */
171 BYTE bCertificate[ANYSIZE_ARRAY];
172} WIN_CERTIFICATE, *PWIN_CERTIFICATE;
173
174typedef struct _API_VERSION {
175 USHORT MajorVersion;
176 USHORT MinorVersion;
177 USHORT Revision;
178 USHORT Reserved;
179} API_VERSION, *PAPI_VERSION;
180
181typedef struct _IMAGE_FUNCTION_ENTRY {
182 DWORD StartingAddress;
183 DWORD EndingAddress;
184 DWORD EndOfPrologue;
185} IMAGE_FUNCTION_ENTRY, *PIMAGE_FUNCTION_ENTRY;
186
187typedef struct _IMAGE_COFF_SYMBOLS_HEADER {
188 DWORD NumberOfSymbols;
189 DWORD LvaToFirstSymbol;
190 DWORD NumberOfLinenumbers;
191 DWORD LvaToFirstLinenumber;
192 DWORD RvaToFirstByteOfCode;
193 DWORD RvaToLastByteOfCode;
194 DWORD RvaToFirstByteOfData;
195 DWORD RvaToLastByteOfData;
196} IMAGE_COFF_SYMBOLS_HEADER, *PIMAGE_COFF_SYMBOLS_HEADER;
197
198typedef struct _FPO_DATA {
199 DWORD ulOffStart;
200 DWORD cbProcSize;
201 DWORD cdwLocals;
202 WORD cdwParams;
203 unsigned cbProlog : 8;
204 unsigned cbRegs : 3;
205 unsigned fHasSEH : 1;
206 unsigned fUseBP : 1;
207 unsigned reserved : 1;
208 unsigned cbFrame : 2;
209} FPO_DATA, *PFPO_DATA;
210
211typedef struct _IMAGE_DEBUG_INFORMATION {
212 LIST_ENTRY List;
213 DWORD Size;
214 PVOID MappedBase;
215 USHORT Machine;
216 USHORT Characteristics;
217 DWORD CheckSum;
218 DWORD ImageBase;
219 DWORD SizeOfImage;
220
221 DWORD NumberOfSections;
222 PIMAGE_SECTION_HEADER Sections;
223
224 DWORD ExportedNamesSize;
225 LPSTR ExportedNames;
226
227 DWORD NumberOfFunctionTableEntries;
228 PIMAGE_FUNCTION_ENTRY FunctionTableEntries;
229 DWORD LowestFunctionStartingAddress;
230 DWORD HighestFunctionEndingAddress;
231
232 DWORD NumberOfFpoTableEntries;
233 PFPO_DATA FpoTableEntries;
234
235 DWORD SizeOfCoffSymbols;
236 PIMAGE_COFF_SYMBOLS_HEADER CoffSymbols;
237
238 DWORD SizeOfCodeViewSymbols;
239 PVOID CodeViewSymbols;
240
241 LPSTR ImageFilePath;
242 LPSTR ImageFileName;
243 LPSTR DebugFilePath;
244
245 DWORD TimeDateStamp;
246
247 BOOL RomImage;
248 PIMAGE_DEBUG_DIRECTORY DebugDirectory;
249 DWORD NumberOfDebugDirectories;
250
251 DWORD Reserved[3];
252} IMAGE_DEBUG_INFORMATION, *PIMAGE_DEBUG_INFORMATION;
253
254typedef struct _ADDRESS {
255 DWORD Offset;
256 WORD Segment;
257 ADDRESS_MODE Mode;
258} ADDRESS, *PADDRESS;
259
260typedef struct _KDHELP {
261 DWORD Thread;
262 DWORD ThCallbackStack;
263 DWORD NextCallback;
264 DWORD FramePointer;
265 DWORD KiCallUserMode;
266 DWORD KeUserCallbackDispatcher;
267 DWORD SystemRangeStart;
268} KDHELP, *PKDHELP;
269
270typedef struct _STACKFRAME {
271 ADDRESS AddrPC;
272 ADDRESS AddrReturn;
273 ADDRESS AddrFrame;
274 ADDRESS AddrStack;
275 PVOID FuncTableEntry;
276 DWORD Params[4];
277 BOOL Far;
278 BOOL Virtual;
279 DWORD Reserved[3];
280 KDHELP KdHelp;
281} STACKFRAME, *PSTACKFRAME;
282
283typedef struct _IMAGEHLP_SYMBOL {
284 DWORD SizeOfStruct;
285 DWORD Address;
286 DWORD Size;
287 DWORD Flags;
288 DWORD MaxNameLength;
289 CHAR Name[ANYSIZE_ARRAY];
290} IMAGEHLP_SYMBOL, *PIMAGEHLP_SYMBOL;
291
292typedef struct _IMAGEHLP_MODULE {
293 DWORD SizeOfStruct;
294 DWORD BaseOfImage;
295 DWORD ImageSize;
296 DWORD TimeDateStamp;
297 DWORD CheckSum;
298 DWORD NumSyms;
299 SYM_TYPE32 SymType;
300 CHAR ModuleName[32];
301 CHAR ImageName[256];
302 CHAR LoadedImageName[256];
303} IMAGEHLP_MODULE, *PIMAGEHLP_MODULE;
304
305typedef struct _IMAGEHLP_LINE {
306 DWORD SizeOfStruct;
307 DWORD Key;
308 DWORD LineNumber;
309 PCHAR FileName;
310 DWORD Address;
311} IMAGEHLP_LINE, *PIMAGEHLP_LINE;
312
313typedef struct _IMAGEHLP_DEFERRED_SYMBOL_LOAD {
314 DWORD SizeOfStruct;
315 DWORD BaseOfImage;
316 DWORD CheckSum;
317 DWORD TimeDateStamp;
318 CHAR FileName[MAX_PATH];
319 BOOLEAN Reparse;
320} IMAGEHLP_DEFERRED_SYMBOL_LOAD, *PIMAGEHLP_DEFERRED_SYMBOL_LOAD;
321
322typedef struct _IMAGEHLP_DUPLICATE_SYMBOL {
323 DWORD SizeOfStruct;
324 DWORD NumberOfDups;
325 PIMAGEHLP_SYMBOL Symbol;
326 ULONG SelectedSymbol;
327} IMAGEHLP_DUPLICATE_SYMBOL, *PIMAGEHLP_DUPLICATE_SYMBOL;
328
329
330
331typedef struct _IMAGE_VXD_HEADER {
332 WORD e32_magic;
333 BYTE e32_border;
334 BYTE e32_worder;
335 DWORD e32_level;
336 WORD e32_cpu;
337 WORD e32_os;
338 DWORD e32_ver;
339 DWORD e32_mflags;
340 DWORD e32_mpages;
341 DWORD e32_startobj;
342 DWORD e32_eip;
343 DWORD e32_stackobj;
344 DWORD e32_esp;
345 DWORD e32_pagesize;
346 DWORD e32_lastpagesize;
347 DWORD e32_fixupsize;
348 DWORD e32_fixupsum;
349 DWORD e32_ldrsize;
350 DWORD e32_ldrsum;
351 DWORD e32_objtab;
352 DWORD e32_objcnt;
353 DWORD e32_objmap;
354 DWORD e32_itermap;
355 DWORD e32_rsrctab;
356 DWORD e32_rsrccnt;
357 DWORD e32_restab;
358 DWORD e32_enttab;
359 DWORD e32_dirtab;
360 DWORD e32_dircnt;
361 DWORD e32_fpagetab;
362 DWORD e32_frectab;
363 DWORD e32_impmod;
364 DWORD e32_impmodcnt;
365 DWORD e32_impproc;
366 DWORD e32_pagesum;
367 DWORD e32_datapage;
368 DWORD e32_preload;
369 DWORD e32_nrestab;
370 DWORD e32_cbnrestab;
371 DWORD e32_nressum;
372 DWORD e32_autodata;
373 DWORD e32_debuginfo;
374 DWORD e32_debuglen;
375 DWORD e32_instpreload;
376 DWORD e32_instdemand;
377 DWORD e32_heapsize;
378 BYTE e32_res3[12];
379 DWORD e32_winresoff;
380 DWORD e32_winreslen;
381 WORD e32_devid;
382 WORD e32_ddkver;
383} IMAGE_VXD_HEADER, *PIMAGE_VXD_HEADER;
384
385/***********************************************************************
386 * Callbacks
387 */
388
389typedef BOOL (CALLBACK *PIMAGEHLP_STATUS_ROUTINE)(
390 IMAGEHLP_STATUS_REASON Reason, LPSTR ImageName, LPSTR DllName,
391 ULONG Va, ULONG Parameter
392);
393
394typedef BOOL (CALLBACK *PSYM_ENUMMODULES_CALLBACK)(
395 LPSTR ModuleName, ULONG BaseOfDll, PVOID UserContext
396);
397
398typedef BOOL (CALLBACK *PSYM_ENUMSYMBOLS_CALLBACK)(
399 LPSTR SymbolName, ULONG SymbolAddress, ULONG SymbolSize,
400 PVOID UserContext
401);
402
403typedef BOOL (CALLBACK *PENUMLOADED_MODULES_CALLBACK)(
404 LPSTR ModuleName, ULONG ModuleBase, ULONG ModuleSize,
405 PVOID UserContext
406);
407
408typedef BOOL (CALLBACK *PSYMBOL_REGISTERED_CALLBACK)(
409 HANDLE hProcess, ULONG ActionCode, PVOID CallbackData,
410 PVOID UserContext
411);
412
413typedef BOOL (CALLBACK *DIGEST_FUNCTION)(
414 DIGEST_HANDLE refdata, PBYTE pData, DWORD dwLength
415);
416
417typedef BOOL (CALLBACK *PREAD_PROCESS_MEMORY_ROUTINE)(
418 HANDLE hProcess, PCVOID lpBaseAddress, PVOID lpBuffer,
419 DWORD nSize, PDWORD lpNumberOfBytesRead
420);
421
422typedef PVOID (CALLBACK *PFUNCTION_TABLE_ACCESS_ROUTINE)(
423 HANDLE hProcess, DWORD AddrBase
424);
425
426typedef DWORD (CALLBACK *PGET_MODULE_BASE_ROUTINE)(
427 HANDLE hProcess, DWORD ReturnAddress);
428
429typedef DWORD (CALLBACK *PTRANSLATE_ADDRESS_ROUTINE)(
430 HANDLE hProcess, HANDLE hThread, PADDRESS lpaddr
431);
432
433/***********************************************************************
434 * Functions
435 */
436
437BOOL WINAPI BindImage(
438 LPSTR ImageName, LPSTR DllPath, LPSTR SymbolPath
439);
440BOOL WINAPI BindImageEx(
441 DWORD Flags, LPSTR ImageName, LPSTR DllPath, LPSTR SymbolPath,
442 PIMAGEHLP_STATUS_ROUTINE StatusRoutine
443);
444PIMAGE_NT_HEADERS WINAPI CheckSumMappedFile(
445 LPVOID BaseAddress, DWORD FileLength,
446 LPDWORD HeaderSum, LPDWORD CheckSum
447);
448BOOL WINAPI EnumerateLoadedModules(
449 HANDLE hProcess,
450 PENUMLOADED_MODULES_CALLBACK EnumLoadedModulesCallback,
451 PVOID UserContext
452);
453HANDLE WINAPI FindDebugInfoFile(
454 LPSTR FileName, LPSTR SymbolPath, LPSTR DebugFilePath
455);
456HANDLE WINAPI FindExecutableImage(
457 LPSTR FileName, LPSTR SymbolPath, LPSTR ImageFilePath
458);
459BOOL WINAPI GetImageConfigInformation(
460 PLOADED_IMAGE LoadedImage,
461 PIMAGE_LOAD_CONFIG_DIRECTORY ImageConfigInformation
462);
463DWORD WINAPI GetImageUnusedHeaderBytes(
464 PLOADED_IMAGE LoadedImage,
465 LPDWORD SizeUnusedHeaderBytes
466);
467DWORD WINAPI GetTimestampForLoadedLibrary(
468 HMODULE Module
469);
470BOOL WINAPI ImageAddCertificate(
471 HANDLE FileHandle, PWIN_CERTIFICATE Certificate, PDWORD Index
472);
473PVOID WINAPI ImageDirectoryEntryToData(
474 PVOID Base, BOOLEAN MappedAsImage, USHORT DirectoryEntry, PULONG Size
475);
476BOOL WINAPI ImageEnumerateCertificates(
477 HANDLE FileHandle, WORD TypeFilter, PDWORD CertificateCount,
478 PDWORD Indices, DWORD IndexCount
479);
480BOOL WINAPI ImageGetCertificateData(
481 HANDLE FileHandle, DWORD CertificateIndex,
482 PWIN_CERTIFICATE Certificate, PDWORD RequiredLength
483);
484BOOL WINAPI ImageGetCertificateHeader(
485 HANDLE FileHandle, DWORD CertificateIndex,
486 PWIN_CERTIFICATE Certificateheader
487);
488BOOL WINAPI ImageGetDigestStream(
489 HANDLE FileHandle, DWORD DigestLevel,
490 DIGEST_FUNCTION DigestFunction, DIGEST_HANDLE DigestHandle
491);
492PLOADED_IMAGE WINAPI ImageLoad(
493 LPSTR DllName, LPSTR DllPath
494);
495PIMAGE_NT_HEADERS WINAPI ImageNtHeader(
496 PVOID Base
497);
498BOOL WINAPI ImageRemoveCertificate(
499 HANDLE FileHandle, DWORD Index
500);
501PIMAGE_SECTION_HEADER WINAPI ImageRvaToSection(
502 PIMAGE_NT_HEADERS NtHeaders, PVOID Base, ULONG Rva
503);
504PVOID WINAPI ImageRvaToVa(
505 PIMAGE_NT_HEADERS NtHeaders, PVOID Base, ULONG Rva,
506 PIMAGE_SECTION_HEADER *LastRvaSection
507);
508BOOL WINAPI ImageUnload(
509 PLOADED_IMAGE LoadedImage
510);
511PAPI_VERSION WINAPI ImagehlpApiVersion(
512 void
513);
514PAPI_VERSION WINAPI ImagehlpApiVersionEx(
515 PAPI_VERSION AppVersion
516);
517BOOL WINAPI MakeSureDirectoryPathExists(
518 LPCSTR DirPath
519);
520BOOL WINAPI MapAndLoad(
521 LPSTR ImageName, LPSTR DllPath, PLOADED_IMAGE LoadedImage,
522 BOOL DotDll, BOOL ReadOnly
523);
524PIMAGE_DEBUG_INFORMATION WINAPI MapDebugInformation(
525 HANDLE FileHandle, LPSTR FileName,
526 LPSTR SymbolPath, DWORD ImageBase
527);
528DWORD WINAPI MapFileAndCheckSumA(
529 LPSTR Filename, LPDWORD HeaderSum, LPDWORD CheckSum
530);
531DWORD WINAPI MapFileAndCheckSumW(
532 LPWSTR Filename, LPDWORD HeaderSum, LPDWORD CheckSum
533);
534BOOL WINAPI ReBaseImage(
535 LPSTR CurrentImageName, LPSTR SymbolPath, BOOL fReBase,
536 BOOL fRebaseSysfileOk, BOOL fGoingDown, ULONG CheckImageSize,
537 ULONG *OldImageSize, ULONG *OldImageBase, ULONG *NewImageSize,
538 ULONG *NewImageBase, ULONG TimeStamp
539);
540BOOL WINAPI RemovePrivateCvSymbolic(
541 PCHAR DebugData, PCHAR *NewDebugData, ULONG *NewDebugSize
542);
543VOID WINAPI RemoveRelocations(
544 PCHAR ImageName
545);
546BOOL WINAPI SearchTreeForFile(
547 LPSTR RootPath, LPSTR InputPathName, LPSTR OutputPathBuffer
548);
549BOOL WINAPI SetImageConfigInformation(
550 PLOADED_IMAGE LoadedImage,
551 PIMAGE_LOAD_CONFIG_DIRECTORY ImageConfigInformation
552);
553BOOL WINAPI SplitSymbols(
554 LPSTR ImageName, LPSTR SymbolsPath,
555 LPSTR SymbolFilePath, DWORD Flags
556);
557BOOL WINAPI StackWalk(
558 DWORD MachineType, HANDLE hProcess, HANDLE hThread,
559 PSTACKFRAME StackFrame, PVOID ContextRecord,
560 PREAD_PROCESS_MEMORY_ROUTINE ReadMemoryRoutine,
561 PFUNCTION_TABLE_ACCESS_ROUTINE FunctionTableAccessRoutine,
562 PGET_MODULE_BASE_ROUTINE GetModuleBaseRoutine,
563 PTRANSLATE_ADDRESS_ROUTINE TranslateAddress
564);
565BOOL WINAPI SymCleanup(
566 HANDLE hProcess
567);
568BOOL WINAPI SymEnumerateModules(
569 HANDLE hProcess, PSYM_ENUMMODULES_CALLBACK EnumModulesCallback,
570 PVOID UserContext
571);
572BOOL WINAPI SymEnumerateSymbols(
573 HANDLE hProcess, DWORD BaseOfDll,
574 PSYM_ENUMSYMBOLS_CALLBACK EnumSymbolsCallback, PVOID UserContext
575);
576PVOID WINAPI SymFunctionTableAccess(
577 HANDLE hProcess, DWORD AddrBase
578);
579DWORD WINAPI SymGetModuleBase(
580 HANDLE hProcess, DWORD dwAddr
581);
582BOOL WINAPI SymGetModuleInfo(
583 HANDLE hProcess, DWORD dwAddr,
584 PIMAGEHLP_MODULE ModuleInfo
585);
586DWORD WINAPI SymGetOptions(
587 void
588);
589BOOL WINAPI SymGetSearchPath(
590 HANDLE hProcess, LPSTR szSearchPath, DWORD SearchPathLength
591);
592BOOL WINAPI SymGetSymFromAddr(
593 HANDLE hProcess, DWORD dwAddr,
594 PDWORD pdwDisplacement, PIMAGEHLP_SYMBOL Symbol
595);
596BOOL WINAPI SymGetSymFromName(
597 HANDLE hProcess, LPSTR Name, PIMAGEHLP_SYMBOL Symbol
598);
599BOOL WINAPI SymGetSymNext(
600 HANDLE hProcess, PIMAGEHLP_SYMBOL Symbol
601);
602BOOL WINAPI SymGetSymPrev(
603 HANDLE hProcess, PIMAGEHLP_SYMBOL Symbol
604);
605BOOL WINAPI SymInitialize(
606 HANDLE hProcess, LPSTR UserSearchPath, BOOL fInvadeProcess
607);
608BOOL WINAPI SymLoadModule(
609 HANDLE hProcess, HANDLE hFile, LPSTR ImageName, LPSTR ModuleName,
610 DWORD BaseOfDll, DWORD SizeOfDll
611);
612BOOL WINAPI SymRegisterCallback(
613 HANDLE hProcess, PSYMBOL_REGISTERED_CALLBACK CallbackFunction,
614 PVOID UserContext
615);
616DWORD WINAPI SymSetOptions(
617 DWORD SymOptions
618);
619BOOL WINAPI SymSetSearchPath(
620 HANDLE hProcess, LPSTR szSearchPath
621);
622BOOL WINAPI SymUnDName(
623 PIMAGEHLP_SYMBOL sym, LPSTR UnDecName, DWORD UnDecNameLength
624);
625BOOL WINAPI SymUnloadModule(
626 HANDLE hProcess, DWORD BaseOfDll
627);
628BOOL WINAPI TouchFileTimes(
629 HANDLE FileHandle, LPSYSTEMTIME lpSystemTime
630);
631DWORD WINAPI UnDecorateSymbolName(
632 LPCSTR DecoratedName, LPSTR UnDecoratedName,
633 DWORD UndecoratedLength, DWORD Flags
634);
635BOOL WINAPI UnMapAndLoad(
636 PLOADED_IMAGE LoadedImage
637);
638BOOL WINAPI UnmapDebugInformation(
639 PIMAGE_DEBUG_INFORMATION DebugInfo
640);
641BOOL WINAPI UpdateDebugInfoFile(
642 LPSTR ImageFileName, LPSTR SymbolPath,
643 LPSTR DebugFilePath, PIMAGE_NT_HEADERS NtHeaders
644);
645BOOL WINAPI UpdateDebugInfoFileEx(
646 LPSTR ImageFileName, LPSTR SymbolPath, LPSTR DebugFilePath,
647 PIMAGE_NT_HEADERS NtHeaders, DWORD OldChecksum
648);
649
650/***********************************************************************
651 * Wine specific
652 */
653
654extern HANDLE IMAGEHLP_hHeap;
655
656#endif /* __WINE_IMAGEHLP_H */
657
658
659
Note: See TracBrowser for help on using the repository browser.