给主程序添加签名
 
添加完成后会自动生成一个*.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

最新文章

  1. thinkphp学习简易教程(二) thinkphp连接读取MySQL数据库
  2. JavaScript弹出窗口技巧
  3. session/SessionFactory线程非安全和线程安全
  4. NOSCRIPT标签的用处
  5. CSS--复习之旅(一)
  6. Activity的四种启动模式和onNewIntent()
  7. Nginx 301重定向域名
  8. hadoop filesystem 删除文件 复制文件 重命名文件
  9. 对static静态成员的理解
  10. Tomcat与Web服务器、应用服务器的关系
  11. 有时候碰到String赋值就出错,原因有三
  12. 扫雷游戏制作过程(C#描述):第五节、菜单操作(续)
  13. Eclipse多行同时进行编辑,可编辑或修改相同内容
  14. SVN分支与合并【超详细的图文教程】(转载)
  15. js - 伪数组转化为数组的几种方法整理(更新中...)
  16. drf7 分页组件
  17. spark加载模型与gRPC与JSF与JDQ冲突
  18. 将本地代码提交到github
  19. P(查准率),R(查全率),F1 值
  20. 在Android中使用Protocol Buffers(上篇)

热门文章

  1. MapReduce Kmeans算法含测试数据
  2. Windows 下 Swoole开发环境配置
  3. ASP前端控件设置只读不要用enabled
  4. BZOJ 1974 [Sdoi2010] auction 代码拍卖会(数位dp)
  5. 配置IIS使用Python 与常见问题解决
  6. 读经典——《CLR via C#》(Jeffrey Richter著) 笔记_基元类型(一)
  7. BZOJ 3083 遥远的国度 树链剖分+脑子
  8. Django之ORM其他骚操作 执行原生SQl
  9. sqlserver 索引进阶(上)
  10. my24_mysql索引-使用篇