在 Inno Setup 中,我必须在哪里指定 SignTool 的参数和特殊序列?
Where do I have to specify the parameters and special sequences for SignTool in Inno Setup?
这是 SignTool
的文档文章:SignTool。
我不太确定应该在哪里指定 SignTool
参数和特殊序列。它是在 [Setup]
部分还是在 编译器 IDE 中(通过工具 | 配置签名工具...菜单) 还是两者都有?如果我在编译器 IDE 中指定了所有参数,我是否必须在 [Setup]
部分中再次指定?另外,这部分我不是很懂:
byparam=$p
Note: for security reasons you should give a unique name to any Sign
Tool set to $p, and not use a byparam name copied from this example.
Consider what happens if you #include a third-party file that says:
[Setup] SignTool=byparam format c:
$p
序列如何真正发挥作用?
在SignTool
directive, you specify, which sign tool definition you want to use in that particular script. The tool can be defined in IDE or using /S
compiler commandline switch.
SignTool
指令可以包含额外的参数,可以通过使用$p
特殊序列的定义来引用。这使您可以灵活地在脚本中定义部分命令,并在定义中定义部分命令。选择权完全在您手中。 老实说,我不太明白其中的原因,因为使用 Inno Setup 预处理器可以实现相同的灵活性。可能有一些历史原因。我不知道 SignTool
是否早于内置预处理器,或者是否相反。
总之,上面的意思就是这三个是等价的:
定义中的一切
定义:
mysigntool=signtool.exe sign /a /n $qMy Common Name$q /t http://... $f
脚本:
[Setup]
signtool=mysigntool
部分在定义中,部分在脚本中
定义:
mysigntool=signtool.exe sign /a $p
脚本:
[Setup]
signtool=mysigntool /n $qMy Common Name$q /t http://... $f
脚本中的一切
定义:
anysigntool=$p
脚本:
[Setup]
signtool=anysigntool signtool.exe sign /a /n $qMy Common Name$q /t http://... $f
这是 SignTool
的文档文章:SignTool。
我不太确定应该在哪里指定 SignTool
参数和特殊序列。它是在 [Setup]
部分还是在 编译器 IDE 中(通过工具 | 配置签名工具...菜单) 还是两者都有?如果我在编译器 IDE 中指定了所有参数,我是否必须在 [Setup]
部分中再次指定?另外,这部分我不是很懂:
byparam=$p
Note: for security reasons you should give a unique name to any Sign Tool set to $p, and not use a byparam name copied from this example. Consider what happens if you #include a third-party file that says:
[Setup] SignTool=byparam format c:
$p
序列如何真正发挥作用?
在SignTool
directive, you specify, which sign tool definition you want to use in that particular script. The tool can be defined in IDE or using /S
compiler commandline switch.
SignTool
指令可以包含额外的参数,可以通过使用$p
特殊序列的定义来引用。这使您可以灵活地在脚本中定义部分命令,并在定义中定义部分命令。选择权完全在您手中。 老实说,我不太明白其中的原因,因为使用 Inno Setup 预处理器可以实现相同的灵活性。可能有一些历史原因。我不知道 SignTool
是否早于内置预处理器,或者是否相反。
总之,上面的意思就是这三个是等价的:
定义中的一切
定义:
mysigntool=signtool.exe sign /a /n $qMy Common Name$q /t http://... $f
脚本:
[Setup] signtool=mysigntool
部分在定义中,部分在脚本中
定义:
mysigntool=signtool.exe sign /a $p
脚本:
[Setup] signtool=mysigntool /n $qMy Common Name$q /t http://... $f
脚本中的一切
定义:
anysigntool=$p
脚本:
[Setup] signtool=anysigntool signtool.exe sign /a /n $qMy Common Name$q /t http://... $f