1 /**
2  * This file has no copyright assigned and is placed in the Public Domain.
3  * This file is part of the mingw-w64 runtime package.
4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5  */
6 #pragma once
7 
8 #ifndef WINAPI
9 #if defined(_ARM_)
10 #define WINAPI
11 #else
12 #define WINAPI __stdcall
13 #endif
14 #endif
15 
16 #define IMAGEAPI DECLSPEC_IMPORT WINAPI
17 #define DBHLP_DEPRECIATED __declspec(deprecated)
18 
19 #define DBHLPAPI IMAGEAPI
20 
21 #define IMAGE_SEPARATION (64*1024)
22 
23   typedef struct _LOADED_IMAGE {
24     PSTR ModuleName;
25     HANDLE hFile;
26     PUCHAR MappedAddress;
27 #ifdef _IMAGEHLP64
28     PIMAGE_NT_HEADERS64 FileHeader;
29 #else
30     PIMAGE_NT_HEADERS32 FileHeader;
31 #endif
32     PIMAGE_SECTION_HEADER LastRvaSection;
33     ULONG NumberOfSections;
34     PIMAGE_SECTION_HEADER Sections;
35     ULONG Characteristics;
36     BOOLEAN fSystemImage;
37     BOOLEAN fDOSImage;
38     BOOLEAN fReadOnly;
39     UCHAR Version;
40     LIST_ENTRY Links;
41     ULONG SizeOfImage;
42   } LOADED_IMAGE,*PLOADED_IMAGE;
43 
44 #define MAX_SYM_NAME 2000
45 
46   typedef struct _MODLOAD_DATA {
47     DWORD ssize;
48     DWORD ssig;
49     PVOID data;
50     DWORD size;
51     DWORD flags;
52   } MODLOAD_DATA,*PMODLOAD_DATA;
53