PE验证MD错误:0x8013124C

时间:2009-04-17 12:20:23

标签: .net peverify

在自定义生成的程序集上运行PEVerify时,我收到此'错误'。

[MD](0x8013124C): Error: Method has a duplicate, token=0x06000023. 
                         [token:0x06000021]
[MD](0x8013124C): Error: Method has a duplicate, token=0x06000021. 
                         [token:0x06000023]

除此之外(以及其他196个完全相同的错误),元数据和IL都没有问题。它也能正常工作。

我无法追踪它的来源(因为它不会以任何方式影响装配)。

不幸的是,谷歌没有透露这个错误。

有人可以提供一些关于这个'错误'的见解以及它是如何造成的吗?

谢谢:)

2 个答案:

答案 0 :(得分:1)

我解决了这个问题。

它是由发出一个具有另一个人的确切签名的方法引起的。

<强>更新

这适用于任何会员。因此,在混淆程序集上运行时,可能会出现相同的MD错误。

答案 1 :(得分:0)

听起来peverify认为您在程序集元数据中有重复的方法行。我在评论中读到您正在使用Reflection.Emit生成程序集。听起来你可能正在重新使用方法定义来生成,而不是为每个方法创建一个新方法。