我的 ASP.NET 应用程序正在使用没有强名称的程序集。当我在 IE 中运行它时,它会显示一条错误消息:
无法通过“xxxxx”加载文件或程序集。或其依赖项之一。无法验证强名称签名者。该程序集可能已被篡改,或者它被延迟签名但未使用正确的私钥完全签名。(来自 HRESULT 的异常:0x80131045)”
我使用sn.exe -Vr xxxx
注册该程序集来跳过强名称验证,但它仍然显示该错误。什么可能导致此问题,接下来我可以做些什么来解决它?
我的 ASP.NET 应用程序正在使用没有强名称的程序集。当我在 IE 中运行它时,它会显示一条错误消息:
无法通过“xxxxx”加载文件或程序集。或其依赖项之一。无法验证强名称签名者。该程序集可能已被篡改,或者它被延迟签名但未使用正确的私钥完全签名。(来自 HRESULT 的异常:0x80131045)”
我使用sn.exe -Vr xxxx
注册该程序集来跳过强名称验证,但它仍然显示该错误。什么可能导致此问题,接下来我可以做些什么来解决它?
这是因为您正在使用 32 位 sn.exe 对 64 位计算机中的程序集取消签名,反之亦然。使用正确的 sn.exe 来解决这个问题。请查看解决方案的超链接
那是延迟签名,用于测试:您需要sn -Vr
在每台要跳过验证的机器上运行.
我想您必须先完成签名,sn -r
然后才能将程序集发布到网络。