.net程式集強簽名
阿新 • • 發佈:2022-05-11
要想得到強簽名的dll有兩種情況:
1.給專案新增強命名
- 在你的專案右鍵->屬性->簽名,勾選“為程式集簽名”,新建 或 瀏覽已經新建過的.pfx檔案,然後重新build專案,生成的dll就是強命名的dll了。
2.直接給dll強命名
- 執行vs自帶的命令提示工具,執行 sn -k [檔名].snk 命令建立snk檔案(其中[檔名]你自己命名,可以包含路徑);
- 使用ildasm **.dll /out:**.il 將dll生成中間語言檔案
- 再使用ilasm **.il /dll /key=[檔名].snk 生成dll,該dll會覆蓋之前沒用簽名的dll。
問題:當新增完簽名的專案編譯報下列錯誤
錯誤 1 無法匯入以下金鑰檔案: **.pfx。該金鑰檔案可能受密碼保護。若要更正此問題,請嘗試再次匯入證書,或手動將證書安裝到具有以下金鑰容器名稱的強名稱 CSP: VS_KEY_67579BF105843F74。
解決方法:
執行vs自帶的命令提示工具,執行 sn -i [檔名].pfx [VS_KEY],然後會讓你輸入密碼,此時輸入建立pfx時設定的密碼即可。
注意:在cmd中輸入密碼時沒有任何顯示,輸入完直接回車就行了。