我看到了其他问题,但我仍在挣扎。我必须重新安装 Windows 11 并尝试再次配置签名。
在 Inno 设置中:
SignTool
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64\Signtool.exe" sign $p
在我的脚本声明中:
SignTool=SignTool /d {#SignedDesc} /du $q{#AppURL}$q /f {#SignedPfx} /p {#SignedPw} /t {#SignedTimeStamp} /v $f
无法编译:
运行签名工具SignTool:“C:\Program Files (x86)\Windows Kits in .0.22621.0\x64\Signtool.exe”sign /d“会议安排助手”/du“https://www. publictalksoftware.co.uk" /f "d:\我的证书�3\我的证书.pfx" /p "xxxx" /t "http://timestamp.sectigo.com" /v "D:\我的程序�2 \MeetSchedAssist\Inno\Output\uninst.e32.tmp" 签名工具命令失败(签名工具命令失败,退出代码为 0x1)。将重试(还剩 2 次尝试)。
但我收到了这条消息。
当我尝试使用 Visual & Installer 在 Visual Studio 中进行编译时:
Preparing Setup program executable
Updating version info (SETUP.E32)
Running Sign Tool SignTool: "C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64\Signtool.exe" sign /d "Meeting Schedule Assistant" /du "https://www.publictalksoftware.co.uk" /f "d:\My Certificate\2023\My Certificate.pfx" /p "xxxx" /t "http://timestamp.sectigo.com" /v "D:\My Programs\2022\MeetSchedAssist\Inno\Output\uninst.e32.tmp"
SignTool Error: No file digest algorithm specified. Please specify the digest algorithm with the /fd flag. Using /fd SHA256 is recommended and more secure than SHA1. Calling signtool with /fd sha1 is equivalent to the previous behavior. In order to select the hash algorithm used in the signing certificate's signature, use the /fd certHash option.
我不知道如何使用那个
/fd
开关。
答案就在我面前:
SignTool=SignTool /d {#SignedDesc} /du $q{#AppURL}$q /f {#SignedPfx} /p {#SignedPw} /t {#SignedTimeStamp} /v /fd SHA256 $f
SignTool 错误:未指定文件摘要算法。请使用
标志指定摘要算法。 建议使用/fd
,比 SHA1 更安全。使用 /fd sha1 调用signtool 与之前的行为等效。要选择签名证书签名中使用的哈希算法,请使用 /fd certHash 选项。/fd SHA256