Skip to content
Stanislavus edited this page Jun 26, 2014 · 4 revisions

.Net Internal Structures.

Header

struct ObjectHeader 
{
    IntPtr SyncBlock;     // First 3 bits are for GC
    MethodTable *MT;      // Reference to the methods table
}
struct MethodTable
{
    MethodTableFlags Flags;

    int Size;

    short AdditionalFlags;
		
    short MethodsCount;
		
    short VirtMethodsCount;
		
    short InterfacesCount;
		
    MethodTable *ParentTable;

    ObjectTypeInfo *ModuleInfo;		
		
    ObjectTypeInfo *EEClass;
}
struct ObjectTypeInfo
{		
    ObjectTypeInfo *ParentClass;

    int[12] - not parsed

    MethodTableInfo *MethodsTable;
}
Clone this wiki locally