Take the 2-minute tour ×

Given PEVerify error and warning output such as that below, how does one track back to the offending class and interface names? Assume I am not a compiler author or IL magician.

[MD]: Error: Class implements interface but not method (class:0x02000091; interface:0x06000169;method:0x00000000). [token:0x09000043]
[MD]: Warning: MemberRef has a duplicate, token=0x0a0001ff. [token:0x0A000060]
share|improve this question
If you're not a compiler author or IL hacker, how did you produce an assembly with these problems? .NET compilers produce valid assemblies in all cases (short of compiler bugs ofc) –  thecoop Jul 5 '11 at 16:21
@thecoop Since originally posting the question, I've determined that these errors are in a third-party assembly. The assembly is an OSS project build, so would still like to track it down. –  bentayloruk Jul 5 '11 at 16:25
@thecoop it would appear that these errors occur when you implement the IHideObjectMember intellisense trick. It is the cause in our case and we have verified it on a second assembly that uses this trick (Autofac and Moq). –  bentayloruk Jul 12 '11 at 12:59
Apparently MS are aware of this issue and it would appear to be a bug in PEVerify. –  bentayloruk Jul 12 '11 at 13:21
add comment

1 Answer

up vote 6 down vote accepted

Use ILDASM and load the assembly in question. Go to View->MetaInfo->Show! This opens up a text viewer showing a human readable version of the assembly metadata. Search for the hex identifiers (but skip the "0x" portion) to find the relevant class, interface and methods.

share|improve this answer
add comment

Your Answer


