Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Inno setup 是否可以使用sha1和sha256证书对安装程序和卸载程序进行双重签名?_Inno Setup_Signtool_Verisign - Fatal编程技术网

Inno setup 是否可以使用sha1和sha256证书对安装程序和卸载程序进行双重签名?

Inno setup 是否可以使用sha1和sha256证书对安装程序和卸载程序进行双重签名?,inno-setup,signtool,verisign,Inno Setup,Signtool,Verisign,在Inno安装程序中,是否可以同时使用sha1和sha256对卸载程序和安装程序进行签名 我知道它可以通过命令工具执行两个证书,但我想知道这是否可以通过Inno中的SignTool实现。Autoanswer 是的,这是可能的。正如@Wosi所建议的,您可以编写一个批处理,然后使用添加的$f参数调用它 样本批次(signtool.bat): 然后在Inno设置中,您可以调用signtool.bat$f,其中$f将被传递给批处理的%1 对于sha1的Windows XP兼容性:删除了/as,/tr替

在Inno安装程序中,是否可以同时使用sha1和sha256对卸载程序和安装程序进行签名

我知道它可以通过命令工具执行两个证书,但我想知道这是否可以通过Inno中的
SignTool
实现。

Autoanswer

是的,这是可能的。正如@Wosi所建议的,您可以编写一个批处理,然后使用添加的
$f
参数调用它

样本批次(signtool.bat):

然后在Inno设置中,您可以调用
signtool.bat$f
,其中
$f
将被传递给批处理的
%1

对于sha1的Windows XP兼容性:删除了
/as
/tr
替换为
/t
,删除了
/td
(根据需要)


我将把它留在这里,因为也许有人会发现它很有用。

我正在使用InnoSetup 5.5.9。我使用ISCC从命令行编译脚本。我的设置脚本在[setup]部分包括以下两行:

SignTool=sha1
SignTool=sha256
ISCC命令如下所示:

ISCC "/ssha1=signtool.exe /f <cert.pfx> /p <certpwd> /fd SHA1 /t <timestamp.url> /v $f" "/ssha256=signtool.exe /f <cert.pfx> /p <certpwd> /fd SHA256 /tr <timestamp.url> /td SHA256 /as /v $f" setup.iss
ISCC”/ssha1=signtool.exe/f/p/fd SHA1/t/v$f”“/ssha256=signtool.exe/f/p/fd SHA256/tr/td SHA256/as/v$f”setup.iss

Innosetup将使用两个证书对安装和卸载进行签名。

为什么不可能?您可以将批处理文件作为signtool传递,该批处理文件调用signtool.exe两次。虽然可以这样做,但请注意,您可以有多个批处理文件,如图所示。我有一些编译错误–需要编写完整路径:c:\…\signtool.bat$f
ISCC "/ssha1=signtool.exe /f <cert.pfx> /p <certpwd> /fd SHA1 /t <timestamp.url> /v $f" "/ssha256=signtool.exe /f <cert.pfx> /p <certpwd> /fd SHA256 /tr <timestamp.url> /td SHA256 /as /v $f" setup.iss