Not sure. Actually the referenced assembly was not placed in the same folder as the tested assembly. It sjould probably fail...
I thought peverify only verified the integrity of the tested assembly, without resolving dependencies. On 27 May 2014 13:27, "Jb Evain" <[email protected]> wrote: > Hi, > > I don't see any obvious issue here. > > Is peverify able to resolve the assembly in which the method is defined? > > Jb > > On Tue, May 27, 2014 at 10:52 AM, Lior Tal <[email protected]> wrote: > > Hi All, > > > > I'm using Mono.Cecil to dynamically generate an assembly. I'm > encountering > > an error when attempting to verify the generated assembly using PEVerify: > > > > An example for an error: > > > > [IL]: Error: [D:\Output.dll : > > > com.flurry.org.codehaus.jackson.map.util.Comparators::getArrayComparator][offset > > 0x0000000A] Unable to resolve token. > > > > In this offset in IL i am calling a method that is referenced from > another > > assembly. I am not sure whether i am using the API correctly. > > > > Here's my code: > > > > var assemblyDefinition = new AssemblyNameDefinition("Output", > > new Version(1, 0, 0, 0)); > > var asm = > AssemblyDefinition.CreateAssembly(assemblyDefinition, > > "Output", ModuleKind.Dll); > > > > // The generated assembly imports a type from the current > > assembly to call its method. > > var proxy = asm.MainModule.Import(typeof(JavaProxy)); > > var td = proxy.Resolve(); > > > > var methodDefinition = td.Methods.First(md => md.Name == > > "Call"); > > var methodReference = > asm.MainModule.Import(methodDefinition); > > > > Later on, adding a call to the methodReference: > > > > method.Body.Instructions.Add(Instruction.Create(OpCodes.Ldstr, > > newType.FullName)); > > method.Body.Instructions.Add(Instruction.Create(OpCodes.Ldstr, > > method.Name)); > > method.Body.Instructions.Add(Instruction.Create(OpCodes.Call, > > methodReference)); > > method.Body.Instructions.Add(Instruction.Create(OpCodes.Ret)); > > > > > > What am i doing wrong? > > > > Any help would be appreciated. > > > > Thanks, > > Lior > > > > > > -- > > -- > > -- > > 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. > -- -- -- 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.
