0

我有一个 C# 项目,它使用依赖于旧版本 DevExpress 的第三方库。此版本 DevExpress 的一个 dll(DevExpress.Utils.v9.2.dll) 中有一个错误。我使用 .NET Reflector 和 Reflexil 来修补 dll 并使用修补后的 dll 替换旧的。然后当我重建解决方案时,Visual Studio 显示错误:

错误 CS0012 类型“XtraForm”在未引用的程序集中定义。您必须添加对程序集“DevExpress.Utils.v9.2, Version=9.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a”的引用。

似乎原始 dll 已签名导致问题。我试过删除强名称,但它不起作用。如何解决?

4

2 回答 2

0

问题是其他程序集引用了签名的 DevExpress.Utils.v9.2.dll。修补后,dll 被取消,因此它不起作用。我自己解决了这个问题,方法是添加引用程序集以更新和删除强名称,并使用与 Reflexil 捆绑的 Strong Name Remover 更新引用程序集。

在此处输入图像描述

于 2019-08-19T00:42:30.240 回答
0

使用 ILSpy 和朋友的绝佳替代品:dnSpy

dnspy

于 2019-08-16T21:25:00.550 回答