我正在修改默认FireBreath WiX脚本以在安装完成后显示简单消息。因为有时它很快,所以用户没有机会注意到它。无法在WiX安装程序中显示对话框
我有这个WXS文件
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product Id="*" ">
<Package ... />
<Upgrade Id="{369b048a-9f97-5e15-8ce3-c983fa5764d3}">
<UpgradeVersion
Property="OLD_VERSION_FOUND"
Minimum="0.0.1" IncludeMinimum="yes"
Maximum="0.3.3.3" IncludeMaximum="yes"
OnlyDetect="no" IgnoreRemoveFailure="yes"
MigrateFeatures="yes" />
</Upgrade>
<Property Id="MSIRESTARTMANAGERCONTROL" Value="Disable" />
<InstallExecuteSequence>
<RemoveExistingProducts After="InstallInitialize" />
<InstallExecute After="RemoveExistingProducts" />
</InstallExecuteSequence>
<Directory Id="TARGETDIR" Name="SourceDir">
...
</Directory>
<Feature Id="MainPluginFeature" Title="Plugin" Level="1">
<ComponentRef Id="InstallDirComp"/>
<ComponentRef Id="PluginNameDirComp"/>
<ComponentRef Id="CompanyDirComp"/>
<ComponentGroupRef Id="PluginDLLGroup"/>
</Feature>
<UI>
<Property Id="DefaultUIFont">DlgFont10</Property>
<TextStyle Id="DlgFont10" FaceName="Tahoma" Size="10" />
<Dialog Id="CompleteDlg"
Width="370"
Height="270"
Title="Plugin installed">
<Control Id="Description"
Type="Text"
X="50"
Y="70"
Width="220"
Height="80"
Text="Installation complete, return to web browser." />
<Control Id="Finish"
Type="PushButton"
X="180"
Y="243"
Width="56"
Height="17"
Default="yes"
Cancel="yes"
Text="OK">
<Publish Event="EndDialog" Value="Exit" />
</Control>
</Dialog>
<InstallUISequence>
<Show Dialog="CompleteDlg" OnExit="success" />
</InstallUISequence>
<AdminUISequence>
<Show Dialog="CompleteDlg" OnExit="success" />
</AdminUISequence>
</UI>
</Product>
</Wix>
但是当我建立它,我得到这些错误信息
错误2错误LGHT0204:ICE20:标准的对话框:“FilesInUse”不对话表发现
错误3错误LGHT0204:ICE20:ErrorDialog属性未在属性表中指定。确定ErrorDialog名称的必需属性
错误4错误LGHT0204:ICE20:FatalError对话框/操作未在'InstallUISequence'序列表中找到。
在'AdminUISequence'序列表中找不到错误5错误LGHT0204:ICE20:FatalError对话框/操作。
错误6错误LGHT0204:在'InstallUISequence'顺序表中找不到ICE20:UserExit对话框/操作。
在'AdminUISequence'序列表中找不到错误7错误LGHT0204:ICE20:UserExit对话框/操作。
我不需要任何其他对话框,只有这一个。如何解决这个问题?我可以忽略这些消息吗?
可以安全地忽略这些错误吗?导致它仍然创建一个msi文件。我只是不知道在这些对话框中显示什么,有没有办法获得错误对话框发生的错误? – Sergi0
如果您没有这些对话框,MSI将会以无声方式失败。我建议使用DialogRef来从WixUIExtension中提取ErrorDlg,因为它已经具有MSI要求构建的错误对话框。 –