Wix UIMinimal 对话不显示图像

Wix UIMinimal dialogue not showing image

我为自定义横幅/对话框图像和许可文本做了以下设置:

    <UI>
      <Publish Dialog="ExitDialog"
        Control="Finish" 
        Event="DoAction" 
        Value="LaunchApplication">WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1</Publish>
      <UIRef Id="WixUI_Minimal" />
    </UI>
    
    <WixVariable Id="WixUILicenseRtf" Value="LicenseAgreement.rtf" />
    <WixVariable Id="WixUIBannerBmp" Value="My banner.png" />
    <WixVariable Id="WixUIDialogBmp" Value="My dialog.png" />

我看到 Windows 7 和 Windows 10 安装程序发生了奇怪的行为:

Windows 10

横幅和对话框显示正常(正确的图像是左侧黑色和右侧白色的背景图像),但许可协议有一个奇怪的行为。如第一张图所示,许可协议只是一个白色的 space,但是如果您尝试 select 覆盖它,则会显示文本(第二张图)

如果你滚动它并取消select,它会显示所有的许可协议,但只有在这样做之后,而不是在最初启动安装程序时。每次启动安装程序时,它都会显示白屏,您必须执行 selection 或滚动以显示文本。

Windows 7

横幅根本不显示,许可协议也根本不显示!

但是,在 select 阅读许可协议的文本后至少会显示许可协议,但它仍然出乎意料(它应该默认显示而不是在您 select / 滚动之后)

图片/文字有问题吗?我刚刚使用许可协议创建了一个普通的 rtf 文件。图像是 png,我假设 Wix 将其转换/调整为正确的格式

更新:

许可证问题已通过使用写字板保存 rtf 得到解决

富文本控件和您的许可证似乎存在一个已知问题。根据 WiX documentation,在大多数情况下,以下解决方法之一将修复它:

  • 在写字板中打开您的 RTF 文件并从那里保存它以便 从文件中删除复杂的 RTF 内容。保存后, 重建你的 MSI。
  • 使用 WixUI_Minimal 集以外的对话集。这个问题 通常仅在出现许可协议屏幕时才会出现 第一个在设置过程中显示,只有
    WixUI_Minimal 对话框集。

至于图片,MSI位图控件只支持BMP和JPEG文件,PNG从Windows8开始支持,根据MSI bitmap control