C#/WPF/.NET 第三方ddl强签名解决(xxx, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null)
报错
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)相关推荐
- 使用InternalsVisibleToAttribute给assembly添加“友元assembly”特性遭遇强签名
一.如何让Intenal成员暴露给另一个程序集 我们知道Modifier为Internal的类型成员仅限于当前程序集能够访问,但是在某些情况下,我们希望将它们暴露给另一个程序集.比较典型的应用场景包括 ...
- 错误:'sys'未定义解决方法.(asp.net Ajax v1.0.61025版)
重装系统后又装了ajax 可是用的时候老是提示"错误:'sys'未定义",看了看以前做的项目,发现Web.Config里面少了<httpHandlers>和<ht ...
- .Net程序集强签名详解
强签名: 1. 可以将强签名的dll注册到GAC,不同的应用程序可以共享同一dll. 2. 强签名的库,或者应用程序只能引用强签名的dll,不能引用未强签名的dll,但是未强签名的dll可以引用强签名 ...
- 秋天NET快速强签名工具V1.1
本款工具可针对NET库程序集等进行快速强签名,支持snk,pfx密码证书. 可用于将线程dll或程序集替换为自属证书签名,可用于解决NET未引用强签名等问题. 已集成VC2010,SDK工具,如发现电 ...
- 什么是.NET 程序集强签名
http://blog.csdn.net/vipxiaotian/archive/2007/07/12/1686071.aspx 用强名称来给程序集签名即谓之程序集强签名! 那什么是强名称,签名又有什 ...
- [ZZ]强签名的由来和作用
在网上,看到很多初学.NET的网友经常问,强签名是什么,它的作用是什么?一句话,强签名就是唯一标识一个Assembly文件的名称.它由Assembly的文件名.版本号.区域信息.公钥信息和处理器架构信 ...
- app分发源码_第三方苹果企业签名源码
第三方苹果企业签名源码 c6wlmsv 第三方苹果企业签名源码 ApplD需要一个易于描述的名称.应当这样讲,如果我们想要了解ios签名是什么意思,就先来谈谈苹果APP的上架问题.当前苹果的APP应用 ...
- 获取第三方应用的签名
获取第三方应用的签名 用于获取安装到手机的第三方应用签名的apk包.点击下载签名生成工具
- 使用MSIL 汇编程序 (Ilasm.exe) 2 强签名
在MSIL汇编程序中,原本的想法只是想告诉大家,如果遇到内部开发时,遇到没有源码的dll,怎样来修改dll中的bug,既然有朋友提到了强签名,以及破解相关的东西,那么今天就在谈一下我自己在这个过程中的 ...
最新文章
- JAVA15.JDK15.6 Record二次预览特性
- 洛谷 P4026 [SHOI2008]循环的债务
- python 长度queue_python:常见的数据结构
- 通过wifi上网,桥接模式下virtualBox虚拟机无法连上网的解决办法
- Java 压缩解压缩 第三方组件,推荐一个强大的Java开发工具类库!
- 【设计模式】—— 解释器模式Interpret
- 星舆科技北斗高精度定位网启动北斗三号服务
- RadASM配色方案工具fix
- 谢逸计算机网络,第一届中国计算机实践教育学术会议在南京成功举办
- RHEL8安装中文及拼音输入法
- 一分钟搞懂app热更新
- AIDL中的in、out、inout的区别
- (01)ORB-SLAM2源码无死角解析-(57) 闭环线程→计算Sim3:理论推导(2)求解R,使用四元数
- 柯西积分不等式的证明题
- linux一分钟关机命令,Linux关机命令集合
- 第3章 软件测试方法--基于直觉和经验的方法
- 优化巨量关键词的匹配(转载笔记)
- (附源码)python方块新闻 毕业设计 091600
- CodeForces - 31D Chocolate【几何】【连通块】
- 使用Python保存剪贴板图片