數位簽章自動化

在公司寫程式果然不一樣,出去都要加數位簽章以示負責。原本的做法是等程式編譯完成後,再以手動的方式加入,不過每次都要這樣加實在太麻煩了,所以就把它加入 Project Post-Build Event  中,這樣就可以達到自動化的目的了

首先把 Project Property Pages 叫出來,只有 Release Build 需要加數位簽章,所以 Configuration 選擇 Release 即可。打開 Build Events 的  Post-Build Event,把要執行的動作寫在 Command Line 中,順便在 Description 中輸入一些說明,以便在編譯的輸出中可以識別。



在輸入命令時,有一些巨集可以使用,其中 TargetPath 是輸出執行檔的名稱 (包含完整路徑),用在這裡剛剛好


命令說明如下:

signtool.exe sign /v /ac ..\..\SignTool\MSCV-GlobalSign.cer /s my /t "http://timestamp.globalsign.com/scripts/timstamp.dll" /du "http://www.company.com" /n COMPANY /a "$(TargetPath)"

  • signtool 是 SDK 裡面的工具,所以不需要另外指定路徑了
  • /ac 後面接的是一個額外的認證檔案,必須指定正確的路徑
  • /t 後面接的是 timestamp 的 URL
  • "$(TargetPath)" 則是要簽章的檔案,考慮到長檔名與空白的問題,所以前後加了雙引號

留言

這個網誌中的熱門文章

Linux 批次檔的寫法

【分享】如何顯示 Debug Message

[分享] Visual Studio 遠端偵錯