如何验证 Windows 安装程序 XML 中 属性 中存储的路径 (WIX)

How to validate a path stored in a property in Windows installer XML (WIX)

有没有办法验证用户定义的自定义 属性 的安装路径?在 WIXUI_Advanced 用户界面中,存在以下语句以验证 WIXUI_INSTALLDIR 属性 的安装路径。

<Publish Dialog="Dialog_Name" Control="InstallScopeNext" Event="SpawnDialog" Value="InvalidDirDlg" Order="9"><![CDATA[NOT WIXUI_DONTVALIDATEPATH AND WIXUI_INSTALLDIR_VALID<>"1"]]></Publish>

有没有办法验证我们也用来存储安装路径的其他用户定义的属性?例如,我想验证我自己定义的 属性 如下。

  <Publish Dialog="Dialog_Name" Control="InstallScopeNext" Event="SpawnDialog" Value="InvalidDirDlg" Order="9"><![CDATA[MYOWN_INSTALLDIRECTORY_VALID<>"1"]]></Publish>

代码示例将不胜感激。

我自己想出来了。 WIXUI_INSTALLDIR_VALID 只能用于验证存储在侧 WIXUI_INSTALLDIR 属性 中的路径。所以在我们定义安装路径的时候,最好把安装路径保存在WIXUI_INSTALLDIR属性和我们自己定义的属性.

 <Property Id="INSTALLDIR" Value="INSTALLFOLDER" />
 <Property Id="WIXUI_INSTALLDIR" Value="INSTALLFOLDER" />

由于验证安装路径只能验证 WIXUI_INSTALLDIR 属性,字段不会对存储在两个属性中造成任何危害。