我的wxs
文件中包含以下代码:
<UI>
<Dialog Id="CustomTextA"
Width="370"
Height="270"
Title="$(loc.InstallDirDlg_Title)">
<Control Id="NextButton"
Type="PushButton"
X="236"
Y="243"
Width="56"
Height="17"
Default="yes"
Text="$(loc.WixUINext)">
<Publish Event="EndDialog"
Value="Return"><![CDATA[CustomTextA_NextArgs=""]]></Publish>
<Publish Event="NewDialog"
Value="[CustomTextA_NextArgs]"><![CDATA[CustomTextA_NextArgs<>""]]></Publish>
</Control>
....
</Dialog>
<InstallUISequence>
<Custom Action="CustomTextA_SetProperty_EDIT2"
After="CustomTextA_SetProperty_EDIT1" />
<Custom Action="CustomTextA_SetProperty_EDIT1"
After="ValidateProductID" />
<Custom Action="CustomTextA_SetProperty_EDIT3"
After="CustomTextA_SetProperty_EDIT2" />
<Custom Action="CustomTextA_SetProperty_EDIT4"
After="CustomTextA_SetProperty_EDIT3" />
<Custom Action="ERRCA_UIANDADVERTISED"
Before="AppSearch"><![CDATA[ProductState=1]]></Custom>
<Show Dialog="CustomTextA"
OnExit="success" />
</InstallUISequence>
<AdminUISequence>
<Show Dialog="CustomTextA"
OnExit="success" />
</AdminUISequence>
</UI>
安装成功完成后,不会显示CustomTextA
对话框,并显示标准的ExitDialog
。
代码中可能有什么问题?
我不确定像Custom Action="CustomTextA_SetProperty_EDIT2"
这样的海关措施是什么,但是我让他们照原样提供了代码。
Wix版本为3.11(从较早的Wix版本升级后,可能出了点问题。
答案 0 :(得分:1)
摘要 :请尝试download the sample below并在Visual Studio中进行查看。另请阅读下面的分步说明,以了解如何将其用作模板。我会在
WixUI_MyMondo.wxs
文件中收集所有GUI标记。 确保也略过链接的先前答案。
WiX自定义对话框示例 :我有一个WiX custom GUI sample here(只需单击下载)。这是一种 "Hello WiX"
的事情-旨在尽可能简单,但没有更简单。换句话说,它只是在做几件事。
WixUI_Mondo.wxs
中,并调用新文件 WixUI_MyMondo.wxs
。它放在 Product.wxs
旁边。Product.wxs
文件中包含带有 <UIRef Id="WixUI_MyMondo" />
的自定义版本(而不是标准的 <UIRef Id="WixUI_Mondo" />
< / strong>),允许根据需要更改 WixUI_MyMondo.wxs
文件。WixUIExtension.dll
文件链接(通常)。WixUI_MyMondo.wxs
内-这意味着我尝试避免在 Product.wxs
内使用对话框构造。请下载并检查样本。据我所知,要从您提供的标记中推断出更多是不可能的。
先前的答案 :以下是关于WiX GUI问题的两个先前的答案。与其以可能会漏掉您真正问题的方式重写内容,不如将它们略过吗?
链接 :设置GUI上的一些其他链接。 Burn是WiX的 setup.exe
生成器。它可以有自己的GUI,而不是嵌入在MSI文件中的GUI。