C# 顽固的装配,错误的钥匙?还是一个强烈的名字问题?

C# 顽固的装配,错误的钥匙?还是一个强烈的名字问题?,c#,.net-assembly,strong-named-key,C#,.net Assembly,Strong Named Key,我正在使用来自Microsoft的两个dll程序集来比较Xml。XmlComparer.cs使用Microsoft.XmlDiffPatch,并且在Visual Studio中正确添加了这两个引用。 然而,我得到了这样的信息: 错误:无法加载文件或程序集的XmlDiffPatch, 版本=1.0.8.28,区域性=中性,PublicKeyToken=b03f5f7f11d50a3a' 或者它的一个依赖项。查找已删除程序集的清单 定义与程序集引用不匹配。(例外于 HRESULT:0x8013100

我正在使用来自Microsoft的两个dll程序集来比较Xml。XmlComparer.cs使用Microsoft.XmlDiffPatch,并且在Visual Studio中正确添加了这两个引用。 然而,我得到了这样的信息:

错误:无法加载文件或程序集的XmlDiffPatch, 版本=1.0.8.28,区域性=中性,PublicKeyToken=b03f5f7f11d50a3a' 或者它的一个依赖项。查找已删除程序集的清单 定义与程序集引用不匹配。(例外于 HRESULT:0x8013100)异常:System.IO.FileLoadException:无法 加载文件或程序集的XmlDiff修补程序,版本=1.0.8.28, 区域性=中性,PublicKeyToken=b03f5f7f11d50a3a'或位于其 依赖关系。定位程序集的清单定义不正确 匹配程序集引用。(来自HRESULT的异常:0x8013100) 文件名:“XmlDiffPatch,版本=1.0.8.28,区域性=neutral, PublicKeyToken=b03f 5f7f11d50a3a'at XmlCompareLib.XmlComparer.Compare(字符串比较选项,字符串 sourceX mlFileName,字符串更改DXMLFileName,字符串 C:\Users\xx\Documents\Visual中的resultHtmlViewFile) Studio 2010\Projects\ConsoleApplication3\ConsoleAp application3\xmlcomarer.cs:at的第214行 C:\Users\xx\Documents\visualstudio中的Ionic.Zip.Examples.ReadZip.Main(字符串[]args) 2010\Projects\ConsoleApplication3\ConsoleApplication3\Pr gram.cs:line 44

警告:程序集绑定日志记录已关闭。要启用程序集绑定 记录失败,请设置注册表值[HKLM\Software\Md Microsoft\Fusion!启用日志](DWORD)到1。注意:有一些 与装配绑定失败日志相关的性能损失。到 关闭此功能,删除注册表值 [HKLM\Software\Microsoft\Fus ion!EnableLog]


我认为这与强名称有关。因为我检查了两个DLL,它们不是强名称,所以我尝试生成一个键和程序集的强名称,但显然不是同一个键。我现在卡住了。

这通常是我打开Fusion logger并记录所有绑定的时候。从Fusion注销的日志通常会更清楚地知道它在做什么

要启用Fusion日志记录,可以打开VisualStudio命令提示符,然后运行“fuslogvw.exe”。Mine最终安装在:

C:\Program Files\Microsoft SDK\Windows\v7.1\Bin\NETFX 4.0 Tools\x64\FUSLOGVW.exe

但这可能因您的安装而异

然后单击工具中的“设置”按钮,并通过翻转单选按钮启用日志记录,然后运行应用程序,然后单击fusion logger中的“刷新”,它将显示发生的所有绑定(以及失败的绑定)


完成后,请记住返回设置窗口并关闭日志记录:)

这些dll-s可能在内部调用另一个dll-s,其中一个已丢失或版本不同?只是随便说说。