给主程序签名及第三方dll强签名
2024-09-18 20:17:46
给主程序添加签名
添加完成后会自动生成一个*.pfx文件。
给程序添加强签名方法:
本文以Quartz.dll为例,使用vs Tools下的工具命令。
打开命令工具是这个样子,
第一步:生成随机密钥对,
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC>sn -k QuartzSnk.snk
第二步:将DLL文件反编译成IL中间语言文件
生成的结果文件为Quartz.il,Quartz.res,Quartz.quartz.config,Quartz.Impl.AdoJobStore.Common.dbproviders.properties,Quartz.Xml.job_scheduling_data_2_0.xsd
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC>ildasm E:\DllSnk\Quartz.dll /out:E:\DllSnk\Quartz.il
第三步:将签名密钥写入到DLL中。(注意dll文件名是否重名,可以先写一个不冲突名称合成dll,然后再修改)
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC>ilasm E:\DllSnk\Quartz.il /res:E:\DllSnk\Quartz.res /dll /key:QuartzSnk.snk /out:E:\DllSnk\Quartz2.dll
第四步:检查刚才签名是否正确有效。
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC>sn -vf E:\DllSnk/Quartz2.dll特别注意:在签名DLL的时候路径一定不要太长,否则任何一步操作都会失败。最好在磁盘根目录下创建一个文件夹,将需要签名的DLL放到这里进行签名合成。如我写成这样,提示我“指定了多个输入文件”ildasm D:\Documents\Visual Studio 2013\Source\Bitbucket_Git\AutoUpdate\AutoUpdater\DLL\Quartz.dll /out:E:\DllSnk\Quartz.il
最新文章
- thinkphp学习简易教程(二) thinkphp连接读取MySQL数据库
- JavaScript弹出窗口技巧
- session/SessionFactory线程非安全和线程安全
- NOSCRIPT标签的用处
- CSS--复习之旅(一)
- Activity的四种启动模式和onNewIntent()
- Nginx 301重定向域名
- hadoop filesystem 删除文件 复制文件 重命名文件
- 对static静态成员的理解
- Tomcat与Web服务器、应用服务器的关系
- 有时候碰到String赋值就出错,原因有三
- 扫雷游戏制作过程(C#描述):第五节、菜单操作(续)
- Eclipse多行同时进行编辑,可编辑或修改相同内容
- SVN分支与合并【超详细的图文教程】(转载)
- js - 伪数组转化为数组的几种方法整理(更新中...)
- drf7 分页组件
- spark加载模型与gRPC与JSF与JDQ冲突
- 将本地代码提交到github
- P(查准率),R(查全率),F1 值
- 在Android中使用Protocol Buffers(上篇)
热门文章
- MapReduce Kmeans算法含测试数据
- Windows 下 Swoole开发环境配置
- ASP前端控件设置只读不要用enabled
- BZOJ 1974 [Sdoi2010] auction 代码拍卖会(数位dp)
- 配置IIS使用Python 与常见问题解决
- 读经典——《CLR via C#》(Jeffrey Richter著) 笔记_基元类型(一)
- BZOJ 3083 遥远的国度 树链剖分+脑子
- Django之ORM其他骚操作 执行原生SQl
- sqlserver 索引进阶(上)
- my24_mysql索引-使用篇