我刚从Comodo购买了代码签名证书。我已经建立了一个小的MS Access数据库,我想用Inno安装程序部署它。脚本运行得很好,但我对代码签名完全陌生。
如何对我的安装文件进行签名?我需要外部软件来签署证书,或者我可以从Inno安装程序中完成吗?
我曾尝试寻找类似问题的答案,但没有一个能够告诉我需要什么才能开始,以及如何开始。
发布于 2018-02-19 16:04:41
你要做的很简单,试着一直跟着做。


signtool.exe sign /tr http://timestamp.digicert.com /td sha256 /fd sha256 /a $p
注意末尾的$p,Inno Setup需要这个...您现在应该已经有了这个,并注意到我已经在path变量中添加了到signtool.exe的路径,并且我正在使用DigiCert的时间服务器为我的签名加时间戳。

SignTool=MsSign $f
这一行告诉编译器使用代码签名,它将使用名为MsSign的变量,并对安装程序生成的输出进行签名。
它应该看起来像这样

当您查看生成的EXE时,您将看到数字签名

现在这对我来说很有效,因为我已经准备好了我的签名存储,这样命令行就可以获得签名,并且我只有一个代码签名,所以我不需要命名它,您的参数可能与我的不同,只要最后,您的设置可以工作,并且您的代码得到签名,就可以了。
希望对您有所帮助,并记住您需要在变量中使用$p
发布于 2013-10-04 13:11:11
要签名可执行文件(由Inno Setup生成的安装程序),只需创建一个批处理文件(.bat)并将以下内容放入其中:
"c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\signtool.exe" sign /f Installer_Wizard_Code_Signing_Certificate.pfx /p password123 /t http://timestamp.verisign.com/scripts/timstamp.dll MySetupFile.exe哪里
Microsoft“c:\Program SDKs\Windows\v7.0A\Bin\signtool.exe" (x86)\Microsoft SDK是Microsoft签名实用程序的路径(Microsoft SDK的一部分)
Installer_Wizard_Code_Signing_Certificate.pfx是您的证书
password123是您证书的密码
MySetupFile.exe是您要签名的安装文件
将所有文件(证书、要签名的设置和批处理文件)放在一个目录中,然后运行批处理文件。Signtool使用证书对文件进行签名,并与官方服务器进行合法性检查。
(您可以使用服务器,尽管您有Comodo证书,但这并不重要。)
发布于 2019-04-11 00:37:58
从微软下载并安装signtool.exe后,如果在上一个答案的第三步中没有将signtool.exe的完整路径添加到path变量中,请将其放入sign工具的命令中:
D:\GUI\signtool.exe sign /tr http://timestamp.digicert.com /td sha256 /fd sha256 /a $p

https://stackoverflow.com/questions/19160779
复制相似问题