【问题标题】:Wix Burn fails to download exePackageWix Burn 无法下载 exePackage
【发布时间】:2013-07-21 00:43:08
【问题描述】:

我正在使用 exePackage 属性来下载一个 exe 包——实际上是来自微软的 VSTO 运行时。

获取包失败。

我相信这是将其添加到 CHAIN 的正确方法

    <ExePackage Id="VSTORuntime" SourceFile="vstor_redist.exe" Permanent="yes" Vital="yes" Cache="no" Compressed="no"
            DownloadUrl="http://go.microsoft.com/fwlink/?LinkId=158917"
            PerMachine="yes"
            InstallCommand="/q /norestart"
            DetectCondition="VSTORFeature"
            InstallCondition="NOT VSTORFeature OR NOT (VSTORVersionV4R >=v10.0.40303) OR NOT (VSTORVersionV4 >=v10.0.21022)" />

这是日志文件部分。它会这样做大约 3 次。

[0D98:06A8][2013-07-22T11:47:31]w343: Prompt for source of package: VSTORuntime, payload: VSTORuntime, path: F:\vstor_redist.exe
[0D98:06A8][2013-07-22T11:47:31]i338: Acquiring package: VSTORuntime, payload: VSTORuntime, download from: http://go.microsoft.com/fwlink/?LinkId=158917
[16A0:0BE4][2013-07-22T11:47:37]e000: Error 0x80070490: Failed to find expected public key in certificate chain.
[16A0:0BE4][2013-07-22T11:47:37]e000: Error 0x80070490: Failed to verify expected payload against actual certificate chain.
[16A0:0BE4][2013-07-22T11:47:37]e000: Error 0x80070490: Failed to verify signature of payload: VSTORuntime

【问题讨论】:

  • 真的没人吗?为什么。我的代码有什么问题?这是一个非常常见的软件包,而且微软肯定已经对其软件包进行了签名等。
  • 现在有 2 个答案...您能否对有效的答案进行投票,并对无效的答案发表评论。谢谢!

标签: wix wix3.7 burn


【解决方案1】:

当引导程序包使用一个版本的 exe 包编译时,我遇到了这个问题,但是当您尝试运行它时,另一个版本与安装程序可执行文件并列。我怀疑 Burn 在您编译捆绑包时会自动从源文件中提取证书信息。

例如,如果您的Setup.exe 文件位于C:\Downloads 中,并且C:\Downloads 还包含与您构建Setup.exe 时存在的版本不同的vstor_redist.exe 版本,您将看到此错误。您可以通过从 C:\Downloads 中删除 vstor_redist.exe 来解决此问题 - 然后,Setup.exe 将关闭并从您指定的 URL 下载正确的版本。

【讨论】:

    【解决方案2】:

    我认为您需要在 RemotePayload 标记中指定证书密钥,如下所示:

    <ExePackage Id="VSTORuntime" SourceFile="vstor_redist.exe" Permanent="yes" Vital="yes" Cache="no" Compressed="no"
            DownloadUrl="http://go.microsoft.com/fwlink/?LinkId=158917"
            PerMachine="yes"
            InstallCommand="/q /norestart"
            DetectCondition="VSTORFeature"
            InstallCondition="NOT VSTORFeature OR NOT (VSTORVersionV4R >=v10.0.40303) OR NOT (VSTORVersionV4 >=v10.0.21022)">
    <RemotePayload ProductName="Windows Installer 4.5"
                   Description="Windows Installer 4.5 Setup"
                   CertificatePublicKey="F321408E7C51F8544B98E517D76A8334052E26E8"
                   CertificateThumbprint="D57FAC60F1A8D34877AEB350E83F46F6EFC9E5F1"
                   Hash="86E1CC622DBF4979717B8F76AD73220CDB70400B"
                   Size="3327000"
                   Version="4.5.0.0" />
    </ExePackage>
    

    这只是一个想法... 或者尝试使用 fiddler 来查找它们是否是错误 404 或类似的东西......

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-02
      • 1970-01-01
      • 2017-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-31
      • 1970-01-01
      相关资源
      最近更新 更多