Changeset 3391 for trunk/src/kernel32/winimagebase.h
- Timestamp:
- Apr 15, 2000, 11:08:37 PM (25 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/kernel32/winimagebase.h
r3375 r3391 1 /* $Id: winimagebase.h,v 1. 2 2000-04-14 22:35:28 sandervlExp $ */1 /* $Id: winimagebase.h,v 1.3 2000-04-15 21:08:37 bird Exp $ */ 2 2 3 3 /* … … 65 65 char *getFullPath() { return fullpath; }; 66 66 67 char *getModuleName(){ return szModule; };67 char *getModuleName() { return szModule; }; 68 68 69 69 virtual HRSRC findResourceA(LPCSTR lpszName, LPSTR lpszType, ULONG lang = LANG_GETFIRST); … … 73 73 virtual BOOL enumResourceNamesA(HMODULE hmod, LPCTSTR lpszType, ENUMRESNAMEPROCA lpEnumFunc, LONG lParam); 74 74 virtual BOOL enumResourceNamesW(HMODULE hmod, LPCWSTR lpszType, ENUMRESNAMEPROCW lpEnumFunc, LONG lParam); 75 virtual BOOL enumResourceTypesA(HMODULE hmod, ENUMRESTYPEPROCA lpEnumFunc, 75 virtual BOOL enumResourceTypesA(HMODULE hmod, ENUMRESTYPEPROCA lpEnumFunc, 76 76 LONG lParam); 77 virtual BOOL enumResourceTypesW(HMODULE hmod, ENUMRESTYPEPROCW lpEnumFunc, 77 virtual BOOL enumResourceTypesW(HMODULE hmod, ENUMRESTYPEPROCW lpEnumFunc, 78 78 LONG lParam); 79 79 … … 82 82 83 83 static BOOL isPEImage(char *szFileName); 84 static void findDll(char *szFileName, char *szFullName, int cchFullFileName);84 static BOOL findDll(const char *pszFileName, char *pszFullName, int cchFullName); 85 85 86 86 void setEntryPoint(ULONG startAddress) { entryPoint = startAddress; }; 87 87 88 void setTLSAddress(LPVOID dwTlsAddress) 89 void setTLSIndexAddr(LPDWORD dwTlsIndexAddr) 90 void setTLSInitSize(ULONG dwTlsSize) 91 void setTLSTotalSize(ULONG dwTlsSize) 88 void setTLSAddress(LPVOID dwTlsAddress) { tlsAddress = dwTlsAddress; }; 89 void setTLSIndexAddr(LPDWORD dwTlsIndexAddr) { tlsIndexAddr = dwTlsIndexAddr; }; 90 void setTLSInitSize(ULONG dwTlsSize) { tlsInitSize = dwTlsSize; }; 91 void setTLSTotalSize(ULONG dwTlsSize) { tlsTotalSize = dwTlsSize; }; 92 92 void setTLSCallBackAddr(PIMAGE_TLS_CALLBACK *dwTlsCallBackAddr) 93 94 95 93 { 94 tlsCallBackAddr = dwTlsCallBackAddr; 95 }; 96 96 97 void tlsAttachThread();//setup TLS structures for new thread98 void tlsDetachThread();//destroy TLS structures97 void tlsAttachThread(); //setup TLS structures for new thread 98 void tlsDetachThread(); //destroy TLS structures 99 99 100 virtual 100 virtual ULONG getApi(char *name) = 0; 101 101 virtual ULONG getApi(int ordinal) = 0; 102 102 … … 105 105 static Win32ImageBase * findModule(HMODULE hModule); 106 106 107 108 107 //Add image to dependency list of this image 108 void addDependency(Win32DllBase *dll); 109 109 BOOL dependsOn(Win32DllBase *dll); 110 110 111 111 protected: 112 void tlsAlloc();//Allocate TLS index for this module113 void tlsDelete();//Destroy TLS index for this module112 void tlsAlloc(); //Allocate TLS index for this module 113 void tlsDelete(); //Destroy TLS index for this module 114 114 115 115 Win32Resource *winres; … … 118 118 119 119 char *fullpath; 120 charszModule[CCHMAXPATH];121 120 char szModule[CCHMAXPATH]; 121 char szFileName[CCHMAXPATH]; 122 122 123 123 HINSTANCE hinstance; 124 124 125 LPVOID tlsAddress;//address of TLS data126 LPDWORD tlsIndexAddr;//address of DWORD that receives the TLS index127 ULONG tlsInitSize;//size of initialized TLS memory block128 ULONG tlsTotalSize;//size of TLS memory block129 PIMAGE_TLS_CALLBACK *tlsCallBackAddr;//ptr to TLS callback array130 ULONG tlsIndex;//module TLS index125 LPVOID tlsAddress; //address of TLS data 126 LPDWORD tlsIndexAddr; //address of DWORD that receives the TLS index 127 ULONG tlsInitSize; //size of initialized TLS memory block 128 ULONG tlsTotalSize; //size of TLS memory block 129 PIMAGE_TLS_CALLBACK *tlsCallBackAddr; //ptr to TLS callback array 130 ULONG tlsIndex; //module TLS index 131 131 132 132 ULONG getPEResourceSize(ULONG id, ULONG type, ULONG lang = LANG_GETFIRST); … … 143 143 ULONG ulRVAResourceSection; 144 144 145 146 Queue 145 //linked list of dlls loaded on behalf of this executable image (dll or exe) 146 Queue loadedDlls; 147 147 private: 148 148 … … 161 161 } WINIMAGE_LOOKUP; 162 162 163 #define WINIMAGE_LOOKUPADDR(a) 163 #define WINIMAGE_LOOKUPADDR(a) (WINIMAGE_LOOKUP *)((ULONG)a + PAGE_SIZE - sizeof(WINIMAGE_LOOKUP)) 164 164 165 165 #endif //__WINIMAGEBASE_H__
Note:
See TracChangeset
for help on using the changeset viewer.