【问题标题】:signtool fail with inno setup : 0x80070003 - "Store IsDiskFile() failed"signtool 因 inno 设置失败:0x80070003 -“存储 IsDiskFile() 失败”
【发布时间】:2011-12-01 02:26:12
【问题描述】:

我在签署我的软件时遇到了一个奇怪的错误。我正在使用 inno setup 4.5.2。

Running Sign Tool command: signtool.exe sign /a /f cert.pfx /v /t "http://timestamp.verisign.com/scripts/timstamp.dll" /p pwd /d "Setup Label" "out\uninst.e32.tmp"
SignTool Error: An unexpected internal error has occurred.
Error information: "Error: Store IsDiskFile() failed." (-2147024893/0x80070003)
Error in W:\path\installer.iss: Sign Tool failed with exit code 0x1.
Compile aborted.

命令行看起来还不错,它甚至可以在 inno setup 编译之外工作。在设置SignedUninstaller=no 让我走得更远时,它在尝试签署输出设置文件时仍然会出现此错误。

现在我已经到处寻找该错误代码 (0x80070003) 和/或消息“Store IsDiskFile() failed”。我也尝试过使用多个版本的 signtool。

【问题讨论】:

    标签: inno-setup signtool


    【解决方案1】:

    我发现了问题,证书的路径必须相对于安装程序的输出路径,而不是当前的工作文件夹。在这种情况下,它将是“..\cert.pfx”。

    【讨论】:

    • 此消息表示找不到证书文件。就我而言,它只是完全丢失(未在本地签出)。 +1
    • 嗯,在我的情况下,要签名的文件的路径不正确。无论如何,这篇文章为我指明了正确的方向,但是是的,错误信息可能会更好!
    • 在我的情况下,我需要将证书路径从相对更改为绝对(在我的 ci 构建服务器的工作区中)。
    【解决方案2】:

    我遇到了同样的问题。我的问题是我在signTool 命令中使用了",而我需要使用$q。令人惊讶的是,它成功签署了可执行文件,但未能签署结果 setup.exe 文件。

    【讨论】:

      【解决方案3】:

      我的问题是在网络驱动器 (G:) 上有 .pfx 文件。将其移至本地驱动器 (C:) 即可解决问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-05-16
        • 2017-01-24
        • 1970-01-01
        • 1970-01-01
        • 2012-06-24
        • 2022-11-04
        • 2012-05-08
        相关资源
        最近更新 更多