Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
6446 | GerdtR | 1 | // |
2 | |||
3 | // |
||
4 | |||
5 | // IMAGE_SCN_TYPE_DSECT 0x00000001 // Reserved. |
||
6 | |||
7 | // IMAGE_SCN_TYPE_GROUP 0x00000004 // Reserved. |
||
8 | |||
9 | // IMAGE_SCN_TYPE_COPY 0x00000010 // Reserved. |
||
10 | |||
11 | #define IMAGE_SCN_CNT_CODE 0x00000020 // Section contains code. |
||
12 | |||
13 | #define IMAGE_SCN_CNT_UNINITIALIZED_DATA 0x00000080 // Section contains uninitialized data. |
||
14 | |||
15 | #define IMAGE_SCN_LNK_OTHER 0x00000100 // Reserved. |
||
16 | |||
17 | // IMAGE_SCN_TYPE_OVER 0x00000400 // Reserved. |
||
18 | |||
19 | |||
20 | |||
21 | // IMAGE_SCN_MEM_PROTECTED - Obsolete 0x00004000 |
||
22 | |||
23 | #define IMAGE_SCN_GPREL 0x00008000 // Section content can be accessed relative to GP |
||
24 | |||
25 | // IMAGE_SCN_MEM_SYSHEAP - Obsolete 0x00010000 |
||
26 | |||
27 | |||
28 | |||
29 | #define IMAGE_SCN_MEM_PRELOAD 0x00080000 |
||
30 | |||
31 | #define IMAGE_SCN_ALIGN_1BYTES 0x00100000 // |
||
32 | |||
33 | #define IMAGE_SCN_ALIGN_4BYTES 0x00300000 // |
||
34 | |||
35 | #define IMAGE_SCN_ALIGN_16BYTES 0x00500000 // Default alignment if no others are specified. |
||
36 | |||
37 | #define IMAGE_SCN_ALIGN_64BYTES 0x00700000 // |
||
38 | |||
39 | #define IMAGE_SCN_ALIGN_256BYTES 0x00900000 // |
||
40 | |||
41 | #define IMAGE_SCN_ALIGN_1024BYTES 0x00B00000 // |
||
42 | |||
43 | #define IMAGE_SCN_ALIGN_4096BYTES 0x00D00000 // |
||
44 | |||
45 | // Unused 0x00F00000 |
||
46 | |||
47 | |||
48 | |||
49 | #define IMAGE_SCN_MEM_DISCARDABLE 0x02000000 // Section can be discarded. |
||
50 | |||
51 | #define IMAGE_SCN_MEM_NOT_PAGED 0x08000000 // Section is not pageable. |
||
52 | |||
53 | #define IMAGE_SCN_MEM_EXECUTE 0x20000000 // Section is executable. |
||
54 | |||
55 | #define IMAGE_SCN_MEM_WRITE 0x80000000 // Section is writeable. |
||
56 | |||
57 | // |
||
58 | |||
59 | |||
60 | |||
61 | #define IMAGE_REL_I386_DIR16 0x0001 //Direct 16-bit reference to the symbols virtual address |
||
62 | |||
63 | #define IMAGE_REL_I386_DIR32 0x0006 //Direct 32-bit reference to the symbols virtual address |
||
64 | |||
65 | #define IMAGE_REL_I386_SEG12 0x0009 //Direct 16-bit reference to the segment-selector bits of a 32-bit virtual address |
||
66 | |||
67 | #define IMAGE_REL_I386_SECREL 0x000B |
||
68 | |||
69 | |||
70 | |||
71 | { |
||
72 | |||
73 | short numobj; //число входов в таблицу объектов |
||
74 | |||
75 | long pCOFF; |
||
76 | |||
77 | short SizeOfOptionalHeader; |
||
78 | |||
79 | }COFF_HEADER; |
||
80 | |||
81 | typedef struct _IMAGE_SYMBOL |
||
82 | |||
83 | union{ |
||
84 | |||
85 | struct{ |
||
86 | |||
87 | unsigned long Long; |
||
88 | |||
89 | char *LongName[2]; |
||
90 | |||
91 | unsigned long Value; |
||
92 | |||
93 | |||
94 | |||
95 | unsigned char NumberOfAuxSymbols; |
||
96 | |||
97 | |||
98 | |||
99 | union { |
||
100 | |||
101 | unsigned long RelocCount; // Set to the real count when IMAGE_SCN_LNK_NRELOC_OVFL is set |
||
102 | |||
103 | unsigned long SymbolTableIndex; |
||
104 | |||
105 | }IMAGE_RELOCATION; |
||
106 |