2017-01-27 66 views
0

我們使用Wix進行安裝項目,並在其中有一個獨立的CustomAction項目。 CustomAction項目(強簽名)有一個強有力簽名的依賴項目(稱爲ProjA)引用。Wix自定義操作項目是否可以簽名?

案例1#自定義行動和ProjA項目都簽署,然後得到以下錯誤。 無法加載文件或程序集XXX.CustomAction,Version = 2.5.2.0,Culture = neutral,PublicKeyToken = XXXXXXXXX'或其某個依賴項。強名稱驗證失敗。 (來自HRESULT的異常:0x8013141A)。

案例2#如果我們去掉強烈的自定義操作項目簽約,並保持ProjA簽名,則我們得到以下錯誤 無法加載文件或程序集XXX.ProjA,版本= 2.5.2.0,文化=中立,公鑰= XXXXXXXXX'或其依賴項之一。強名稱驗證失敗。 (來自HRESULT的異常:0x8013141A)。

案例3#如果我們從Custom Action和ProjA項目中刪除了強烈簽名,安裝程序運行成功。 所以我們正在尋找案例#1來解決。

有沒有人有這方面的想法?

回答

0

開始閱讀關於如何DTF作品這樣的背景:

http://blog.deploymentengineering.com/2008/05/deployment-tools-foundation-dtf-custom.html

當您重命名您的包裹CA DLL爲.zip,看看它是你可能不會看到在那裏你簽署的DLL內容。

已經有一段時間了,因爲我這樣做了,但我認爲它與SfxCA的默認構建行爲有關,試圖決定它應該和不應該包裝什麼。 (說你DLL是的,其他一些DLL是的,system.dll沒有),我認爲需要考慮代碼簽名。切換引用上的CopyLocal(true | false)標誌並使用zip技術重建/重新檢查。