Пример #1
0
 public StructureReader(ImageReader ir)
 {
     m_ir = ir;
     m_img = ir.Image;
     m_streams = m_img.MetadataRoot.Streams;
     m_tHeap = m_streams.TablesHeap;
     m_tableReader = ir.MetadataReader.TableReader;
 }
		static AssemblyDefinition GetAssembly (ImageReader irv, bool manifestOnly)
		{
			StructureReader srv = new StructureReader (irv, manifestOnly);
			AssemblyDefinition asm = new AssemblyDefinition (
				new AssemblyNameDefinition (), srv);

			asm.Accept (srv);
			return asm;
		}
		public StructureReader (ImageReader ir)
		{
			if (ir.Image.CLIHeader == null)
				throw new ImageFormatException ("The image is not a managed assembly");

			m_ir = ir;
			m_img = ir.Image;
			m_streams = m_img.MetadataRoot.Streams;
			m_tHeap = m_streams.TablesHeap;
			m_tableReader = ir.MetadataReader.TableReader;
		}
Пример #4
0
 public ReflectionReader(ModuleDefinition module)
 {
     m_module = module;
     m_reader = m_module.ImageReader;
     m_root = m_module.Image.MetadataRoot;
     m_tHeap = m_root.Streams.TablesHeap;
     m_checkDeleted = (m_tHeap.HeapSizes & 0x80) != 0;
     if (m_reader != null)
         m_tableReader = m_reader.MetadataReader.TableReader;
     m_codeReader = new CodeReader (this);
     m_sigReader = new SignatureReader (m_root, this);
     m_isCorlib = module.Assembly.Name.Name == Constants.Corlib;
 }
		static AssemblyDefinition GetAssemblyManifest (ImageReader reader)
		{
			return GetAssembly (reader, true);
		}
		static AssemblyDefinition GetAssembly (ImageReader reader)
		{
			return GetAssembly (reader, false);
		}
		public StructureReader (ImageReader ir, bool manifestOnly) : this (ir)
		{
			m_manifestOnly = manifestOnly;
		}
Пример #8
0
 static ImageReader Read(Image img, Stream stream)
 {
     ImageReader reader = new ImageReader (img, new BinaryReader (stream));
     img.Accept (reader);
     return reader;
 }
Пример #9
0
 public MetadataReader(ImageReader brv)
 {
     m_ir = brv;
     m_binaryReader = brv.GetReader ();
 }
Пример #10
0
        internal ModuleDefinition(string name, AssemblyDefinition asm, StructureReader reader, bool main)
            : base(name)
        {
            if (asm == null)
                throw new ArgumentNullException ("asm");
            if (name == null || name.Length == 0)
                throw new ArgumentNullException ("name");

            m_asm = asm;
            m_main = main;
            #if !CF_1_0
            m_mvid = Guid.NewGuid ();
            #endif
            if (reader != null) {
                m_image = reader.Image;
                m_imgReader = reader.ImageReader;
                m_manifestOnly = reader.ManifestOnly;
            } else
                m_image = Image.CreateImage ();

            m_modRefs = new ModuleReferenceCollection (this);
            m_asmRefs = new AssemblyNameReferenceCollection (this);
            m_res = new ResourceCollection (this);
            m_types = new TypeDefinitionCollection (this);
            m_types.OnTypeDefinitionAdded += new TypeDefinitionEventHandler (OnTypeDefinitionAdded);
            m_types.OnTypeDefinitionRemoved += new TypeDefinitionEventHandler (OnTypeDefinitionRemoved);
            m_refs = new TypeReferenceCollection (this);
            m_refs.OnTypeReferenceAdded += new TypeReferenceEventHandler (OnTypeReferenceAdded);
            m_refs.OnTypeReferenceRemoved += new TypeReferenceEventHandler (OnTypeReferenceRemoved);
            m_members = new MemberReferenceCollection (this);

            m_controller = new ReflectionController (this);
        }
Пример #11
0
 public static Image GetImage(Stream stream)
 {
     return(ImageReader.Read(stream).Image);
 }
Пример #12
0
 public static Image GetImage(byte [] image)
 {
     return(ImageReader.Read(image).Image);
 }
Пример #13
0
 public static Image GetImage(string file)
 {
     return(ImageReader.Read(file).Image);
 }