【问题标题】:Inno Setup Code Signing Certificate fails with Cannot Find File Specified [duplicate]Inno 设置代码签名证书失败,找不到指定的文件 [重复]
【发布时间】:2018-04-19 22:11:59
【问题描述】:

我有 Inno Setup 和 CSC...我尝试按照 Inno Setup 的文档设置代码签名。我这样做主要是因为我想对 uninst***.exe 文件进行代码签名。

编译时,我得到这个错误:

Running Sign Tool command: signtool sign /f <absolute_path_that_exists>\<file_that_exists>.p12 /p <some_cool_password> /fd sha256 /tr http://sha256timestamp.ws.symantec.com/sha256/timestamp /v "<absolute_path_that_exists>\uninst.e32.tmp"

Sign Tool command failed (Failed to execute Sign Tool.
Error 2: The system cannot find the file specified). Will retry (2 tries left).

我的 Inno Setup .iss 文件中有这个:

SignTool=standardcsc
SignedUninstaller=yes

standardcsc 在哪里:

signtool sign /f <absolute_path_that_exists>\<file_that_exists>.p12 /p <some_cool_password> /fd sha256 /tr http://sha256timestamp.ws.symantec.com/sha256/timestamp /v $f

唯一不存在的文件是&lt;absolute_path_that_exists&gt;\uninst.e32.tmp"

我不完全确定我是否正确... 为什么 Inno Setup 试图签署一个不存在的文件?

我很困惑,我不知道如何解决这个问题......请帮助!

谢谢。

【问题讨论】:

  • 你能打开一个命令提示符并从那里运行那个确切的命令并让它工作吗?如果不是,则问题与 Inno Setup 无关。错误消息似乎更像是在说它找不到signtool.exe 本身(系统找不到指定的文件,而不是signtool 找不到指定的文件)。您的计算机上的 PATH 某处是否有 signtool.exe?
  • 这个问题不是链接问题的重复,因为它涉及不同的错误。

标签: inno-setup code-signing


【解决方案1】:

问题与你的 SignTool 命令有关,signtool 命令可能找不到。 要解决此问题,请确保 signtool.exe 位于 Windows“SYSTEM”PATH 中,否则您可以在命令中指定 signtool.exe 的路径。如果找不到,它应该类似于C:\Program Files (x86)\Windows Kits\10\bin\x64\signtool.exe

如果仍然无法正常工作,可以尝试在 InnoSetup 中的 SignTool 命令设置前临时添加cmd.exe /k 以查看更详细的调试日志。在我的情况下,即使我认为我在用户 PATH 中添加了 signtool.exe,但由于 InnoSetup 在不同的 shell 中运行,它找不到命令 signtool.exe。在我用signtool.exe 的绝对路径替换它之后,它就可以工作了。

【讨论】:

    【解决方案2】:
    Failed to execute Sign Tool
    

    这告诉你,它没有找到你的signtool,你应该使用它的绝对路径或者让它在你的 PATH 环境变量中可用。


    这道题与你的证书无关。

    【讨论】:

      猜你喜欢
      • 2017-01-24
      • 1970-01-01
      • 2017-02-02
      • 1970-01-01
      • 2012-07-31
      • 2011-04-06
      • 1970-01-01
      • 1970-01-01
      • 2015-10-19
      相关资源
      最近更新 更多