您是第 Web Page Tracking 位访客

水~墨~

昂首阔步,不留一点遗憾!

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
为没有源码的DLL文件添加强名称

如果项目中引用了其他没有源码的dll文件,并且此dll文件是没有强名称的程序集,则编译时会出现类似 "Assembly generation failed -- 引用的程序集 'xxxxxxxxxxx' 没有强名称" 这样的错误。
我这里引用的是Interop.Interop.MSScriptControl.dll程序集,它不是强名称的,则需要进行以下操作:
1.打开SDK 命令提示窗口;

 


2.创建一个新的随机密钥对:
sn -k Interop.Interop.MSScriptControl.snk
3.反编译目标程序集
ildasm Interop.Interop.MSScriptControl.dll /out=Interop.Interop.MSScriptControl.il
3.重新编译,附带强命名参数
ilasm Interop.Interop.MSScriptControlg.il /dll /resource=Interop.Interop.MSScriptControl.res /key=Interop.Interop.MSScriptControl.snk /optimize
4.验证签名信息
sn -v Interop.Interop.MSScriptControl.dll
 
 
 
程序用引用别的没有强命名的程序集进行编译时候会报错,这时候要将引用的dll进行强命名。
posted on 2013-03-24 11:56  水墨.MR.H  阅读(3291)  评论(0编辑  收藏  举报
知识共享许可协议
本博客为水墨原创,基于Creative Commons Attribution 2.5 China Mainland License发布,欢迎转载,演绎或用于商业目的,但是必须保留本文的水墨(包含链接)。如您有任何疑问或者授权方面的协商,请给我留言。