VS2008 引用程序集 沒有強名稱 解決辦法

  爲項目添增強名稱方法:
1.右鍵單擊項目,打開屬性窗口;
2.在屬性窗口裏選擇《簽名》標籤,選中爲程序集簽名的選項,在下拉列表裏選擇新建 ip

3.打開新建簽名窗口,輸入簽名的名稱密碼等內容 源碼

單擊肯定後,簽名添加完成。
 io

爲沒有源碼的DLL文件添增強名稱
 
若是項目中引用了其餘沒有源碼的dll文件,而且此dll文件是沒有強名稱的程序集,則編譯時會出現相似 "Assembly generation failed -- 引用的程序集 'xxxxxxxxxxx' 沒有強名稱" 這樣的錯誤。
我這裏引用的是Interop.Scripting.dll程序集,它不是強名稱的,則須要進行如下操做:
1.打開SDK 命令提示窗口;asm

 


2.建立一個新的隨機密鑰對:
sn -k Interop.Scripting.snk
3.反編譯目標程序集
ildasm Interop.Scripting.dll /out=Interop.Scripting.il
3.從新編譯,附帶強命名參數
ilasm Interop.Scripting.il /dll /resource=Interop.Scripting.res /key=Interop.Scripting.snk /optimize
4.驗證簽名信息
sn -v Interop.Scripting.dll編譯

OK,將生成的dll文件從新引入到項目中而後編譯。引用

相關文章
相關標籤/搜索