程序集生成失敗 -- 引用的程序集“Interop.MSScriptControl”沒有強名稱


為沒有源碼的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進行強命名。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM