2014-09-04 95 views
0

代碼簽名我的Visual Studio項目時有困難。我在Visual Studio解決方案中有多個項目。每個項目都生成不同的程序集。我正在嘗試爲所有這些項目的輸出生成安裝程序安裝程序。代碼簽名中的問題

我已經創建了用於簽署程序集的BATCH腳本。我能夠成功簽署我的項目的程序集。

我甚至已經成功地簽署了MSI安裝程序。

那麼,我遇到了什麼問題?

我面臨的問題是,當我在Visual Studio中構建安裝和部署項目時,安裝程​​序中添加的程序集未簽名。儘管在構建安裝項目之前我已經成功簽署了它們。

我發現計算器2篇文章在這裏有一個類似的問題:How to sign installation files of a Visual Studio .msi Signed exe becomes unsigned after adding project output in setup package using visual studio 2008

不過這也沒有爲我工作。我已經嘗試在構建安裝項目之前簽署項目的OBJ文件。但是,添加到項目中的程序集尚未簽名。

所以,我放棄了,並想在這裏提出一個查詢。任何幫助將非常感激。

感謝

與問候 阿曼

+0

你什麼時候簽署組件?重建一個設置和部署項目會導致重建所有引用的項目,我建議爲每個項目(右鍵單擊項目,屬性,生成事件)建立一個後構建事件,這個事件在構建完成後對組件進行簽名。 – Fixation 2014-09-04 12:10:39

+0

我已經在後期構建事件中添加了一個代碼簽名命令,並在項目屬性中的「運行後期構建:」組合框中選擇了「成功構建」。但是這些程序集仍然沒有在安裝程序中籤名。 :( – 2014-09-04 12:15:06

+0

當我構建單個項目時,他們的程序集已成功簽名,但是當我構建安裝項目時,則沒有。 – 2014-09-04 12:23:42

回答

0

在安裝和部署項目中,我發現,右擊選擇「輸出」的「從...主輸出」的文件系統頁面顯示了它使用\ obj \ Debug \ myfile.dll中的.dll內容

更改後生成命令行後,它對我很有用。將其更改爲這樣的事情:

cscript "C:\signmyfile.vbs" "$(ProjectDir)\obj\$(ConfigurationName)\$(TargetFileName)" 

其中 「C:\ signmyfile.vbs」 是你ofcourse

編輯簽名的方法:改變蝙蝠以.VBS,因爲我使用CSCRIPT

+0

我在C#項目解決方案中使用了批處理腳本,因此,我必須更改「cscript」呼籲「在你的腳本,它爲我工作:)謝謝很多人.....我很累後尋找長期解決問題......你救了我的一天:)感謝很多....! – 2014-09-04 14:31:13