Changeset 8003 for trunk/tools/common/kFilePE.h
- Timestamp:
- Feb 24, 2002, 3:47:28 AM (24 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tools/common/kFilePE.h
r5531 r8003 1 /* $Id: kFilePE.h,v 1.4 2001-04-17 00:26:11 bird Exp $ 1 /* $Id: kFilePE.h,v 1.5 2002-02-24 02:47:27 bird Exp $ 2 * 2 3 * kFilePE - PE files. 3 4 * … … 9 10 #define _kFilePE_h_ 10 11 11 /******************************************************************************* 12 * Defined Constants * 13 *******************************************************************************/ 14 15 #if !defined(__WINE_PEEXE_H) && !defined(_WINNT_) 16 #if 1 17 #define PIMAGE_DOS_HEADER void* 18 #define PIMAGE_FILE_HEADER void* 19 #define PIMAGE_OPTIONAL_HEADER void* 20 #define PIMAGE_DATA_DIRECTORY void* 21 #define PIMAGE_SECTION_HEADER void* 22 #define PIMAGE_EXPORT_DIRECTORY void* 23 #define PIMAGE_IMPORT_DESCRIPTOR void* 24 #define PIMAGE_RESOURCE_DIRECTORY void* 25 #define PIMAGE_BASE_RELOCATION void* 26 #define PIMAGE_DEBUG_DIRECTORY void* 27 #define PSZ void* 28 #define PULONG void* 29 #define PIMAGE_TLS_DIRECTORY void* 30 #define PIMAGE_LOAD_CONFIG_DIRECTORY void* 31 #define PIMAGE_IMPORT_DESCRIPTOR void* 32 #define PIMAGE_THUNK_DATA void* 33 #define PIMAGE_IMPORT_DESCRIPTOR void* 34 #else 35 #include <peexe.h> 36 #endif 12 #ifndef _peexe_h_ 13 #define PIMAGE_DOS_HEADER void * 14 #define PIMAGE_FILE_HEADER void * 15 #define PIMAGE_OPTIONAL_HEADER void * 16 #define PIMAGE_DATA_DIRECTORY void * 17 #define PIMAGE_SECTION_HEADER void * 18 #define PIMAGE_EXPORT_DIRECTORY void * 19 #define PIMAGE_IMPORT_DESCRIPTOR void * 20 #define PIMAGE_RESOURCE_DIRECTORY void * 21 #define PIMAGE_BASE_RELOCATION void * 22 #define PIMAGE_DEBUG_DIRECTORY void * 23 #define PIMAGE_TLS_DIRECTORY void * 24 #define PIMAGE_LOAD_CONFIG_DIRECTORY void * 25 #define PIMAGE_IMPORT_DESCRIPTOR void * 26 #define PIMAGE_THUNK_DATA void * 27 #define PIMAGE_IMPORT_DESCRIPTOR void * 37 28 #endif 38 29 39 30 40 /*******************************************************************************41 * Structures and Typedefs *42 *******************************************************************************/43 44 31 /** 45 32 * PE (portable executable) files. 46 * TODO: error handling.47 33 * @author knut st. osmundsen 48 34 */ … … 50 36 { 51 37 private: 52 void *pvBase;38 void * pvBase; /* The file mapping. */ 53 39 54 /* headers */55 PIMAGE_DOS_HEADER pDosHdr;56 PIMAGE_FILE_HEADER pFileHdr;57 PIMAGE_OPTIONAL_HEADER pOptHdr;58 PIMAGE_DATA_DIRECTORY paDataDir;59 PIMAGE_SECTION_HEADER paSectionHdr;40 /* headers - pointers within the filemapping. */ 41 PIMAGE_DOS_HEADER pDosHdr; 42 PIMAGE_FILE_HEADER pFileHdr; 43 PIMAGE_OPTIONAL_HEADER pOptHdr; 44 PIMAGE_DATA_DIRECTORY paDataDir; 45 PIMAGE_SECTION_HEADER paSectionHdr; 60 46 61 47 /** @cat … … 65 51 PIMAGE_IMPORT_DESCRIPTOR pImportDir; /* 1 */ 66 52 PIMAGE_RESOURCE_DIRECTORY pRsrcDir; /* 2 */ 67 PVOIDpExcpDir; /* 3 */68 PVOIDpSecDir; /* 4 */53 void * pExcpDir; /* 3 */ 54 void * pSecDir; /* 4 */ 69 55 PIMAGE_BASE_RELOCATION pBRelocDir; /* 5 */ 70 56 PIMAGE_DEBUG_DIRECTORY pDebugDir; /* 6 */ 71 PSZpCopyright; /* 7 */72 PULONGpulGlobalPtr; /* 8 */ //is this the correct pointer type?57 char * pCopyright; /* 7 */ 58 unsigned long * pulGlobalPtr; /* 8 */ //is this the correct pointer type? 73 59 PIMAGE_TLS_DIRECTORY pTLSDir; /* 9 */ 74 60 PIMAGE_LOAD_CONFIG_DIRECTORY pLoadConfigDir; /* 10 */ … … 76 62 PIMAGE_THUNK_DATA pIATDir; /* 12 */ //is this the correct pointer type? 77 63 PIMAGE_IMPORT_DESCRIPTOR pDelayImportDir;/* 13 */ 78 PVOIDpComDir; /* 14 */79 PVOIDpv15; /* 15 */64 void * pComDir; /* 14 */ 65 void * pv15; /* 15 */ 80 66 81 67 public: 82 kFilePE(kFile *pFile) throw (int);68 kFilePE(kFile *pFile) throw (kError); 83 69 virtual ~kFilePE(); 84 70 85 71 /** @cat Module information methods. */ 86 BOOLmoduleGetName(char *pszBuffer, int cchSize = 260);72 KBOOL moduleGetName(char *pszBuffer, int cchSize = 260); 87 73 88 74 /** @cat Export enumeration methods. */ 89 BOOLexportFindFirst(kExportEntry *pExport);90 BOOLexportFindNext(kExportEntry *pExport);75 KBOOL exportFindFirst(kExportEntry *pExport); 76 KBOOL exportFindNext(kExportEntry *pExport); 91 77 void exportFindClose(kExportEntry *pExport); 92 78 93 79 /** @cat Export Lookup methods */ 94 BOOLexportLookup(unsigned long ulOrdinal, kExportEntry *pExport);95 BOOLexportLookup(const char * pszName, kExportEntry *pExport);80 KBOOL exportLookup(unsigned long ulOrdinal, kExportEntry *pExport); 81 KBOOL exportLookup(const char * pszName, kExportEntry *pExport); 96 82 97 BOOL isPe() const{ return TRUE;}83 KBOOL isPe() const { return TRUE;} 98 84 99 BOOLdump(kFile *pOut);85 KBOOL dump(kFile *pOut); 100 86 }; 101 87
Note:
See TracChangeset
for help on using the changeset viewer.