报错

FileLoadException:
未能加载文件或程序集“CircularGauge, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”
或它的某一个依赖项。需要强名称程序集。 (异常来自 HRESULT:0x80131044)

原因,报错信息里面有 CircularGauge,这是项目里面引用的一个第三dll。

报错原因

项目使用了签名,这个dll没有使用签名,就像报错信息描述的PublicKeyToken=null

解决办法

  • 给这个dll 进行签名

准备步骤

  1. 找到dll的位置
  2. 找到项目签名文件的位置
  3. 使用系统自带的工具进行签名

实施过程

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)相关推荐

  1. 使用InternalsVisibleToAttribute给assembly添加“友元assembly”特性遭遇强签名

    一.如何让Intenal成员暴露给另一个程序集 我们知道Modifier为Internal的类型成员仅限于当前程序集能够访问,但是在某些情况下,我们希望将它们暴露给另一个程序集.比较典型的应用场景包括 ...

  2. 错误:'sys'未定义解决方法.(asp.net Ajax v1.0.61025版)

    重装系统后又装了ajax 可是用的时候老是提示"错误:'sys'未定义",看了看以前做的项目,发现Web.Config里面少了<httpHandlers>和<ht ...

  3. .Net程序集强签名详解

    强签名: 1. 可以将强签名的dll注册到GAC,不同的应用程序可以共享同一dll. 2. 强签名的库,或者应用程序只能引用强签名的dll,不能引用未强签名的dll,但是未强签名的dll可以引用强签名 ...

  4. 秋天NET快速强签名工具V1.1

    本款工具可针对NET库程序集等进行快速强签名,支持snk,pfx密码证书. 可用于将线程dll或程序集替换为自属证书签名,可用于解决NET未引用强签名等问题. 已集成VC2010,SDK工具,如发现电 ...

  5. 什么是.NET 程序集强签名

    http://blog.csdn.net/vipxiaotian/archive/2007/07/12/1686071.aspx 用强名称来给程序集签名即谓之程序集强签名! 那什么是强名称,签名又有什 ...

  6. [ZZ]强签名的由来和作用

    在网上,看到很多初学.NET的网友经常问,强签名是什么,它的作用是什么?一句话,强签名就是唯一标识一个Assembly文件的名称.它由Assembly的文件名.版本号.区域信息.公钥信息和处理器架构信 ...

  7. app分发源码_第三方苹果企业签名源码

    第三方苹果企业签名源码 c6wlmsv 第三方苹果企业签名源码 ApplD需要一个易于描述的名称.应当这样讲,如果我们想要了解ios签名是什么意思,就先来谈谈苹果APP的上架问题.当前苹果的APP应用 ...

  8. 获取第三方应用的签名

    获取第三方应用的签名 用于获取安装到手机的第三方应用签名的apk包.点击下载签名生成工具

  9. 使用MSIL 汇编程序 (Ilasm.exe) 2 强签名

    在MSIL汇编程序中,原本的想法只是想告诉大家,如果遇到内部开发时,遇到没有源码的dll,怎样来修改dll中的bug,既然有朋友提到了强签名,以及破解相关的东西,那么今天就在谈一下我自己在这个过程中的 ...

最新文章

  1. JAVA15.JDK15.6 Record二次预览特性
  2. 洛谷 P4026 [SHOI2008]循环的债务
  3. python 长度queue_python:常见的数据结构
  4. 通过wifi上网,桥接模式下virtualBox虚拟机无法连上网的解决办法
  5. Java 压缩解压缩 第三方组件,推荐一个强大的Java开发工具类库!
  6. 【设计模式】—— 解释器模式Interpret
  7. 星舆科技北斗高精度定位网启动北斗三号服务
  8. RadASM配色方案工具fix
  9. 谢逸计算机网络,第一届中国计算机实践教育学术会议在南京成功举办
  10. RHEL8安装中文及拼音输入法
  11. 一分钟搞懂app热更新
  12. AIDL中的in、out、inout的区别
  13. (01)ORB-SLAM2源码无死角解析-(57) 闭环线程→计算Sim3:理论推导(2)求解R,使用四元数
  14. 柯西积分不等式的证明题
  15. linux一分钟关机命令,Linux关机命令集合
  16. 第3章 软件测试方法--基于直觉和经验的方法
  17. 优化巨量关键词的匹配(转载笔记)
  18. (附源码)python方块新闻 毕业设计 091600
  19. CodeForces - 31D Chocolate【几何】【连通块】
  20. 使用Python保存剪贴板图片

热门文章

  1. 如今做网商还能以前一样吗?网站必不可少
  2. 别坐在金矿上捡垃圾:给管理者的10条建议
  3. java交通信号灯毕业论文范文_信号灯设计论文,关于基于FPGA的交通信号灯控制系统设计相关参考文献资料-免费论文范文...
  4. Unity实现幸运大转盘
  5. 工业大数据漫谈4:工业大数据的作用
  6. 信号完整性研究系列--什么是信号完整性
  7. 使用理想低通滤波器对图像进行处理显示
  8. python 模拟键盘自动打字敲英语文章
  9. 文件名和文件夹的bat批量重命名替换关键字和删除关键字
  10. 鸡尾酒疗法(C语言)