I think I've located the issue. MetadataSystem isn't being populated when decompiled from memory. I attached the images of the results.
On Tuesday, June 16, 2015 at 10:25:02 AM UTC-4, Chuck Beasley wrote: > > Hi JB, > I'm using AssemblySaver and it's great. There's one issue that I see in > ildasm. When it produces the DLL, it includes extras like implements, > which causes the Assembly loader to fail. I've attached a picture of the > ildasm output. The image correctDLL.png was produced by MonoCecil. The > image incorrectDLL.png was decompiled from memory by AssemblySaver and > saved with MonoCecil. > > Thanks > Chuck B. > > On Monday, June 15, 2015 at 3:45:59 PM UTC-4, Chuck Beasley wrote: >> >> Cool! Thanks! >> >> So far I haven't had any issues using Mono Cecil with CoreCLR. I'll check >> out the code in the branch to see if I can use it. >> >> Chuck B. >> >> On Sunday, June 14, 2015 at 4:12:54 PM UTC-4, Jb Evain wrote: >>> >>> Hi! >>> >>> In a branch of Mono.Reflection: >>> >>> https://github.com/jbevain/mono.reflection/tree/assembly-saver >>> >>> There's code to turn a System.Reflection.Assembly into a >>> Mono.Cecil.AssemblyDefinition. >>> >>> I have no idea if it will work with the CoreCLR though :) >>> >>> Jb >>> >>> On Sat, Jun 13, 2015 at 6:06 PM, Chuck Beasley <[email protected]> >>> wrote: >>> > I'm working on a vNext project and would like to use Mono Cecil to >>> > dynamically changed assemblies. However, with vNext there are no >>> assemblies >>> > output that can be loaded later. So, I'm trying to figure out a way to >>> get >>> > the reflected assembly code into Cecil. Does anyone have any ideas? >>> Here's >>> > what I've done so far, I get an Assembly object by doing an >>> Assembly.Load on >>> > the fullname. Then, I get a Module array of all the modules. For each >>> > module, I get the array of MethodInfo. Next, I get the MethodBody for >>> each >>> > MethodInfo. Finally, I get the byte array using GetILAsByteArray. What >>> I'd >>> > like to do is pass the fullname to AssemblyDefinition.ReadAssembly and >>> have >>> > it build the AssemblyDefinition. Right now, you can only pass a file >>> or a >>> > Stream. Maybe someone can tell me how to get the Assembly as a Stream >>> that I >>> > can pass to AssemblyDefinition.ReadAssembly. >>> > >>> > Thanks, >>> > Chuck B. >>> > >>> > -- >>> > -- >>> > -- >>> > mono-cecil >>> > --- >>> > You received this message because you are subscribed to the Google >>> Groups >>> > "mono-cecil" group. >>> > To unsubscribe from this group and stop receiving emails from it, send >>> an >>> > email to [email protected]. >>> > For more options, visit https://groups.google.com/d/optout. >>> >> -- -- -- mono-cecil --- You received this message because you are subscribed to the Google Groups "mono-cecil" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
