使用 wix 的自定义对话框给出重复符号错误
Posted
技术标签:
【中文标题】使用 wix 的自定义对话框给出重复符号错误【英文标题】:Custom dialog box using wix giving duplicate symbol error 【发布时间】:2014-08-26 12:31:01 【问题描述】:以下是我的代码:
<UI>
<Dialog Id="ExitDialog" Width="370" Height="270" Title="Exit Dialog">
<Control Id="Exit"
Type="PushButton"
X="236" Y="243" Width="56" Height="17"
Default="yes"
Cancel="yes"
Text="Exit">
<Publish Event="EndDialog" Value="Return">1</Publish>
</Control>
</Dialog>
<TextStyle Id="DefaultFont" FaceName="Tahoma" Size="8" />
<Property Id="DefaultUIFont" Value="DefaultFont" />
<InstallUISequence>
<Show Dialog="ExitDialog" OnExit="success" />
</InstallUISequence>
<AdminUISequence>
<Show Dialog="ExitDialog" OnExit="success" />
</AdminUISequence>
</UI>
我已收到http://blogs.technet.com/b/alexshev/archive/2008/10/16/from-msi-to-wix-part-20-user-interface-required-dialog-boxes.aspx的引用
我的代码出现以下错误: 找到重复的符号“对话框:退出对话框”。这通常意味着一个 Id 是重复的。检查以确保给定类型(文件、组件、功能)的所有标识符都是唯一的。请让我知道上面的代码有什么问题。
【问题讨论】:
【参考方案1】:问题在于,编译器不仅会拉入您的自定义对话框,而且还会拉入原始对话框(来自项目引用),尽管实际上并未使用后者。所涉及的重复项是指在“UI”块之外声明的属性。只需注释掉您(自定义)副本中的那些,只要它们出现在 UI 块之前。
【讨论】:
【参考方案2】:例如将“Id="ExitDialog"的ID改为Id="ExitDialog2"。
【讨论】:
以上是关于使用 wix 的自定义对话框给出重复符号错误的主要内容,如果未能解决你的问题,请参考以下文章
如何在关闭对话框的 Wix 安装程序中停止自定义操作中的进度条