如何在 InstallExecuteSequence 中定义 CustomAction 的状态文本?

How to define the status text for a CustomAction in InstallExecuteSequence?

我有一个带有多个自定义操作的安装程序,例如:

<CustomAction Id="INSTALL_DRIVERS_32" Directory="DIR_DRIVERS" ExeCommand='"[DIR_DRIVERS]install_32_drivers.bat"' Execute="deferred" Impersonate="no" Return="ignore" />
<CustomAction Id="INSTALL_DRIVERS_64" Directory="DIR_DRIVERS" ExeCommand='"[DIR_DRIVERS]install_64_drivers.bat"' Execute="deferred" Impersonate="no" Return="ignore" />

安装顺序:

<InstallExecuteSequence>
  <Custom Action="INSTALL_DRIVERS_32" Before="InstallFinalize"><![CDATA[NOT VersionNT64 AND NOT Installed]]></Custom>
  <Custom Action="INSTALL_DRIVERS_64" Before="InstallFinalize"><![CDATA[VersionNT64 AND NOT Installed]]></Custom>
</InstallExecuteSequence>

我想向用户展示安装程序在做什么:

我该怎么做?

我正在使用 WixUI_InstallDir UI,我不想破坏默认布局。我也检查了 this answer 但我不知道该怎么做(另外,我不需要动态更新状态,只是为了显示文本)。

您很可能需要为该自定义操作添加一个 ProgressText 元素。如果您将该自定义操作名称作为 Action,然后是消息文本,它应该可以工作。


例如,在UI元素下:

<ProgressText Action="INSTALL_DRIVERS_32">Installing drivers</ProgressText>