0

在自定义生成的程序集上运行 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 没有问题。它也可以正常工作。

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

不幸的是,谷歌并没有透露太多关于这个错误的信息。

有人可以提供一些关于这个“错误”的见解以及它是如何引起的吗?

谢谢 :)

4

2 回答 2

1

我解决了这个问题。

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

更新

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

于 2009-05-19T14:37:36.920 回答
0

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

于 2009-04-17T13:30:52.040 回答