首页 > 解决方案 > DLL 寻找错误的版本

问题描述

我开发了一个在 Visual Studio 2015 中使用 WinSCPnet.dll 的类库 (dll)。在排除它寻找错误 dll 的原因时,我为其添加了 Nuget,获得了最新版本。我们使用的版本其实是在那之前的几个,所以我卸载了最新的(使用Nuget),安装了我想要的版本。现在,当它运行时,它正在寻找最新版本。

System.IO.FileLoadException:无法加载文件或程序集“WinSCPnet,版本=1.6.5.9925,文化=中性,PublicKeyToken=2271ec4a3c56d0bf”或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(来自 HRESULT 的异常:0x80131040)

我尝试搜索注册表 gacutil /u (成功运行并删除了 dll,但我仍然收到此消息),清理项目并重建,删除 bin 和 obj 中的所有内容并重建 - 我错过了什么?

谢谢!

标签: c#dll

解决方案


尝试这个 :

卸载你的项目,右键单击,编辑.csproj文件..找到你的参考,它已经变成了这样<Reference Include="WinSCPnet, Version=1.6.5.9925 .../>",编辑创建打开关闭参考标签<Reference></Reference> 里面放<HintPath>path to your dll file here</HintPath>

希望这可以帮助!?


推荐阅读