admin管理员组文章数量:1644414
报错
FileLoadException:
未能加载文件或程序集“CircularGauge, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”
或它的某一个依赖项。需要强名称程序集。 (异常来自 HRESULT:0x80131044)
原因,报错信息里面有 CircularGauge,这是项目里面引用的一个第三dll。
报错原因
项目使用了签名,这个dll没有使用签名,就像报错信息描述的
PublicKeyToken=null
解决办法
- 给这个dll 进行签名
准备步骤
- 找到dll的位置
- 找到项目签名文件的位置
- 使用系统自带的工具进行签名
实施过程
VS中鼠标右键dll查看属性,复制路径备用
C:\CustomData\PC\Aowising-wincc\wincc\dll\CircularGauge.dll
打开命令窗(以管理员身份运行)
进行反编译签名,再编译为dll
第一步:输入反编译指令
"C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\ildasm.exe" C:\CustomData\PC\Aowising-wincc\wincc\dll\CircularGauge.dll /output=D:\DapperExtensions.StrongName.il
反编译工具:"C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\ildasm.exe"
目标dll位置:C:\CustomData\PC\Aowising-wincc\wincc\dll\CircularGauge.dll
(请替换为你自己的)
输出路径:/output=D:\
输出文件名:DapperExtensions.StrongName.il
第二步:输入签名命令
"C:\Windows\Microsoft.NET\Framework\v2.0.50727\ilasm.exe" D:\DapperExtensions.StrongName.il /dll /out=D:\DapperExtensions.StrongName.dll /key=C:\CustomData\PC\Aowising-wincc\key.snk /resource=D:\DapperExtensions.StrongName.res
签名工具:"C:\Windows\Microsoft.NET\Framework\v2.0.50727\ilasm.exe"
签名文件:D:\DapperExtensions.StrongName.il
签名后生成文件类型:/dll
签名后输出路径:/out=D:\
前后后输出文件名称:DapperExtensions.StrongName.dll
签名过程使用的签名密钥:/key=C:\CustomData\PC\Aowising-wincc\key.snk
(请替换为你自己的)
待签名的文件资源:/resource=D:\DapperExtensions.StrongName.res
第三步将生成的dll改名为CircularGauge.dll
第四步 替换未签名的项目CircularGauge.dll
先删除引用,再删除未签名的dll,再使用已签名的dll
项目成功运行
版权声明:本文标题:C#WPF.NET 第三方ddl强签名解决(xxx, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/xitong/1729375097a1198741.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论