HOW TO:使用 SignTool.exe 簽署安裝程式檔案 (ClickOnce)
您可以使用 SignTool.exe 簽署安裝程式 (setup.exe)。 這項程序有助於確保不會在使用者電腦上安裝遭到修改的檔案。
根據預設,ClickOnce 有已簽署的資訊清單和已簽署的安裝程式。 不過如果您稍後想要變更安裝程式的參數,就必須在稍後簽署安裝程式。 如果在簽署安裝程式之後變更參數,簽章會損毀。
下列程序會產生未簽署的資訊清單和未簽署的安裝程式。 接著在 Visual Studio 中啟用 ClickOnce 的簽署功能,產生已簽署的資訊清單。 安裝程式保留未簽署,因此客戶可以用自己的憑證來簽署可執行檔。
若要產生未簽署的安裝程式並在稍後簽署
在開發電腦上,安裝您想要用來簽署資訊清單的憑證。
在 [方案總管] 中選取專案。
按一下 [專案] 功能表上的 [ProjectName 屬性]。
在 [簽章] 頁面中,清除 [簽署 ClickOnce 資訊清單]。
在 [發行] 頁中,按一下 [必要條件]。
確定已選取所有的必要條件,然後按一下 [確定]。
在 [發行] 頁上,驗證發行設定,然後按一下 [立即發行]。
方案隨即將未簽署的應用程式資訊清單、未簽署的部署資訊清單、版本特定檔案,以及未簽署的安裝程式發行至發行資料夾位置。
在 [發行] 頁中,按一下 [必要條件]。
在 [必要條件] 對話方塊中,清除 [建立安裝程式以安裝必要條件元件]。
在 [發行] 頁上,驗證發行設定,然後按一下 [立即發行]。
方案隨即將已簽署的應用程式資訊清單、已簽署的部署資訊清單以及版本特定檔案發行至發行資料夾位置。 發行程序不會覆寫未簽署的安裝程式。
在客戶端開啟命令提示字元。
將目錄變更到包含 .exe 檔案的目錄。
使用下列命令簽署 .exe 檔案:
signtool sign /sha1 CertificateHash Setup.exe signtool sign /f CertFileName Setup.exe
例如,若要簽署安裝程式,請使用下列其中一個命令:
signtool sign /sha1 CCB... Setup.exe signtool sign /f CertFileName Setup.exe