我必须在我的项目中使用一些dll文件,这些文件引用了程序集XXXXX。我现在在我的项目中有这个程序集的更新版本,但是当我运行我的项目时,我收到错误:Could not load file or assembly XXXXX, Version=XXXXX
。我尝试使用MSDN article Redirecting Assembly Versions解决此问题。但它没有帮助。似乎重定向程序集不起作用,因为我有不同的公共令牌密钥。旧装配中null
。但它在较新的装配中有一些值“xxxxxxxxxxx”。如何解决这个问题?
P.S。类似的问题是here。但不同之处在于我有不同的公共令牌密钥。
答案 0 :(得分:0)
您需要获取针对新版XXXXX构建的新版dll文件。
您可以在http://msdn.microsoft.com/en-us/library/yx7xezcf.aspx中了解有关装配体查找的更多信息。
答案 1 :(得分:0)
共享dll中的公钥应该可以保护应用免受“中间人/中间人”攻击。
当当前的sub.dll与编译main.exe时没有相同的公钥时,dot net运行时正确拒绝使用sub.dll启动main.exe。
解决这个问题你可以