WiX:找到重复的符号'ControlEvent:ExitDialog / Finish / EndDialog / Return / 1'

时间:2014-07-08 06:21:11

标签: wix wix3.8

我有一个在Visual Studio 2010 Professional中正确构建的WiX 3.8安装程序Product.wxs 我只是想尝试修改安装程序的步骤工作流程,所以我在Wix / Product / Package XML元素之后添加了this answer的UI块:

<UI>
  <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" />
  <Property Id="WixUI_Mode" Value="Custom" />
  <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8" />
  <TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma" Size="9" Bold="yes" />
  <TextStyle Id="WixUI_Font_Title"  FaceName="Tahoma" Size="9" Bold="yes" />
  <Property Id="DefaultUIFont" Value="WixUI_Font_Normal" />

  <DialogRef Id="ProgressDlg" />
  <DialogRef Id="ErrorDlg" />
  <DialogRef Id="FilesInUse" />
  <DialogRef Id="FatalError" />
  <DialogRef Id="UserExit" />
  <DialogRef Id="InstallDirDlg"/>
  <DialogRef Id="FeaturesDlg" />

  <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="FeaturesDlg" Order="2"></Publish>
  <Publish Dialog="FeaturesDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">1</Publish>
  <Publish Dialog="InstallDirDlg" Control="Back" Event="NewDialog" Value="FeaturesDlg">1</Publish>
  <Publish Dialog="InstallDirDlg" Control="ChangeFolder" Property="_BrowseProperty" Value="[WIXUI_INSTALLDIR]" Order="1">1</Publish>
  <Publish Dialog="InstallDirDlg" Control="ChangeFolder" Event="SpawnDialog" Value="BrowseDlg" Order="2">1</Publish>
  <Publish Dialog="InstallDirDlg" Control="Next" Event="SetTargetPath" Value="[WIXUI_INSTALLDIR]" Order="1">1</Publish>
  <Publish Dialog="InstallDirDlg" Control="Next" Event="NewDialog" Value="ExitDialog" Order="2">1</Publish>
  <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish>
</UI>

问题:WiX现在因此消息失败:

  

错误13找到重复的符号'ControlEvent:ExitDialog / Finish / EndDialog / Return / 1'。这通常意味着Id是重复的。检查以确保给定类型(文件,组件,功能)的所有标识符都是唯一的。 C:\ MyApp \ Installer \ Product.wxs 42 1安装程序

     

错误14与先前错误相关的符号位置。 C:\ src \ wix38 \ src \ ext \ UIExtension \ wixlib \ WixUI_Minimal.wxs 46 1安装程序

我做错了什么?

1 个答案:

答案 0 :(得分:1)

问题是我后来<UI>中有另一个Product.wxs元素,我不记得了。

删除第二个<UI>块解决了这个问题。