www.pudn.com > remote_thread.zip > pedef.h


#ifndef __PE_DEFINE_H__ 
#define __PE_DEFINE_H__ 
 
#define NTSIGNATURE(ptr) ((LPVOID)((BYTE *)(ptr) + ((PIMAGE_DOS_HEADER)(ptr))->e_lfanew)) 
#define SIZE_OF_NT_SIGNATURE (sizeof(DWORD)) 
#define PEFHDROFFSET(ptr) ((LPVOID)((BYTE *)(ptr)+((PIMAGE_DOS_HEADER)(ptr))->e_lfanew+SIZE_OF_NT_SIGNATURE)) 
#define OPTHDROFFSET(ptr) ((LPVOID)((BYTE *)(ptr)+((PIMAGE_DOS_HEADER)(ptr))->e_lfanew+SIZE_OF_NT_SIGNATURE+sizeof(IMAGE_FILE_HEADER))) 
#define SECHDROFFSET(ptr) ((LPVOID)((BYTE *)(ptr)+((PIMAGE_DOS_HEADER)(ptr))->e_lfanew+SIZE_OF_NT_SIGNATURE+sizeof(IMAGE_FILE_HEADER)+sizeof(IMAGE_OPTIONAL_HEADER))) 
#define RVATOVA(base,offset) ((LPVOID)((DWORD)(base)+(DWORD)(offset))) 
#define VATORVA(base,offset) ((LPVOID)((DWORD)(offset)-(DWORD)(base))) 
 
#endif // __PE_DEFINE_H__