ExePackage RemotePayload哈希值问题

Har*_*iya 2 wix burn

我已经使用 ExePackage 和 RemotePayload 实现了先决条件,因为我需要使用运行时 webinstaller (DownloadURL) 下载包。但是,当软件包在某个时间(例如季度更新)后升级时,软件包版本和哈希值也会发生变化。因此,我收到类似 0x80091007 的错误(哈希值不正确)。因此,如果有人知道如何忽略哈希值检查,请帮助我。下面是我已经实现的代码:

<ExePackage
Id="MicrosoftEdgeWebview2"
DisplayName="Microsoft Edge Webview2 Runtime"
Compressed="no"
Cache="no"
PerMachine="yes"
Vital ="yes"
Permanent ="yes"
InstallSize="1"
InstallCommand="/silent /install"
DetectCondition="MicrosoftEdgeWebview2Version &gt;= $(var.MicrosoftEdgeWebview2MinimumVersion) OR MicrosoftEdgeWebview2Version64 &gt;= $(var.MicrosoftEdgeWebview2MinimumVersion)"
Name="MicrosoftEdgeWebview2Setup.exe"
DownloadUrl="https://go.microsoft.com/fwlink/p/?LinkId=2124703">
<RemotePayload
               ProductName="Microsoft Edge Webview2 Runtime"
               Description="Microsoft Edge Webview2 Runtime Setup"
               Hash="080e3e4cdcfc809762a32e8fa7cdc0f37b8e36a5"
               Size="1778968" Version="1.3.153.47" />
Run Code Online (Sandbox Code Playgroud)

Sea*_*all 5

出于安全原因,Burn 引擎将始终验证有效负载。为了避免哈希验证,您必须在 中指定证书信息,RemotePayload以便它验证数字签名。您应该使用heat.exe payload ...来收获这些信息。

“%WIX%\bin\heat.exe”负载 windowsdesktop-runtime-5.0.5-win-x64.exe -o windowsdesktop-runtime-5.0.5-win-x64.exe.wxs

<RemotePayload
CertificatePublicKey="F49F9B33E25E33CCA0BFB15A62B7C29FFAB3880B"
CertificateThumbprint="ABDCA79AF9DD48A0EA702AD45260B3C03093FB4B"
Description="Microsoft Windows Desktop Runtime - 5.0.5 (x64)"
Hash="9CE1E77FE51E3F104D1DF7670F83F12B8ABF82F6"
ProductName="Microsoft Windows Desktop Runtime - 5.0.5 (x64)"
Size="54977944"
Version="5.0.5.29917"
/>
Run Code Online (Sandbox Code Playgroud)