Installation Wix:应用属性发布
我的Wix项目包含3个文件: 1) Product.wsx-主wxs文件 2) MyDlg.wxs-带有复选框的自定义对话框 3) 1.txt-任何文件 产品.wxs:Installation Wix:应用属性发布,installation,wix,windows-installer,wix3.5,Installation,Wix,Windows Installer,Wix3.5,我的Wix项目包含3个文件: 1) Product.wsx-主wxs文件 2) MyDlg.wxs-带有复选框的自定义对话框 3) 1.txt-任何文件 产品.wxs: <?xml version="1.0" encoding="UTF-8"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> <Fragment> <UI> <Property
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI>
<Property Id="RECOGVERSION" Value="0" Secure="yes" /><br/>
<Dialog Id="MyDlg" Width="370" Height="270" Title="My empty dialog">
<Control Id="RecognitionServerText" Type="Text" X="25" Y="53" Width="340" Height="15" Transparent="yes" NoPrefix="yes" Text="Select version:" />
<Control Id="RecognitionServerRadioButtonGroup" Type="RadioButtonGroup" X="16" Y="70" Width="120" Height="73" Property="RECOGVERSION" >
<RadioButtonGroup Property="RECOGVERSION">
<RadioButton Height="15" Text="version 1 (old)" Value="0" Width="120" X="0" Y="0" />
<RadioButton Height="15" Text="version 2 (new)" Value="1" Width="120" X="0" Y="18" />
</RadioButtonGroup>
</Control>
<Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Default="yes" Text="!(loc.WixUINext)">
<Publish Property="RECOGVERSION" Value="0">RECOGVERSION = "0"</Publish>
<Publish Property="RECOGVERSION" Value="1">RECOGVERSION = "1"</Publish>
<Publish Event="NewDialog" Value="CustomizeDlg" Order="10" />
</Control>
<Control Id="Back" Type="PushButton" X="180" Y="243" Width="56" Height="17" Text="!(loc.WixUIBack)">
<Publish Event="NewDialog" Value="LicenseAgreementDlg" Order="10" />
</Control>
<Control Id="Cancel" Type="PushButton" X="304" Y="243" Width="56" Height="17" Cancel="yes" Text="!(loc.WixUICancel)">
<Publish Event="SpawnDialog" Value="CancelDlg">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>
RECOGVERSION=0
许可证接受=“1”
未安装
未安装
MyDlg.wxs:
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI>
<Property Id="RECOGVERSION" Value="0" Secure="yes" /><br/>
<Dialog Id="MyDlg" Width="370" Height="270" Title="My empty dialog">
<Control Id="RecognitionServerText" Type="Text" X="25" Y="53" Width="340" Height="15" Transparent="yes" NoPrefix="yes" Text="Select version:" />
<Control Id="RecognitionServerRadioButtonGroup" Type="RadioButtonGroup" X="16" Y="70" Width="120" Height="73" Property="RECOGVERSION" >
<RadioButtonGroup Property="RECOGVERSION">
<RadioButton Height="15" Text="version 1 (old)" Value="0" Width="120" X="0" Y="0" />
<RadioButton Height="15" Text="version 2 (new)" Value="1" Width="120" X="0" Y="18" />
</RadioButtonGroup>
</Control>
<Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Default="yes" Text="!(loc.WixUINext)">
<Publish Property="RECOGVERSION" Value="0">RECOGVERSION = "0"</Publish>
<Publish Property="RECOGVERSION" Value="1">RECOGVERSION = "1"</Publish>
<Publish Event="NewDialog" Value="CustomizeDlg" Order="10" />
</Control>
<Control Id="Back" Type="PushButton" X="180" Y="243" Width="56" Height="17" Text="!(loc.WixUIBack)">
<Publish Event="NewDialog" Value="LicenseAgreementDlg" Order="10" />
</Control>
<Control Id="Cancel" Type="PushButton" X="304" Y="243" Width="56" Height="17" Cancel="yes" Text="!(loc.WixUICancel)">
<Publish Event="SpawnDialog" Value="CancelDlg">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>
RECOGVERSION=“0”
RECOGVERSION=“1”
1.
当我尝试单击自定义对话框中的“下一步”按钮时,什么也没有发生。
我无法转到下一个对话框
我尝试从MyDlg.wxs中删除以下行:
<Publish Property="RECOGVERSION" Value="0">RECOGVERSION = "0"</Publish>
<Publish Property="RECOGVERSION" Value="1">RECOGVERSION = "1"</Publish>
RECOGVERSION=“0”
RECOGVERSION=“1”
它有效,但在新窗口中,但有“RECOGVERSION”属性的未更新值
问题是什么?使用ORCA查看MSI的ControlEvent表。我猜,因为您没有指定订单属性,所以您的订单完全错误,并且在您的增强ControlEvents有机会运行之前,NewDialog[NEXTDIALOG]正在被处理。使用ORCA查看MSI的ControlEvent表。我猜,因为您没有指定订单属性,所以您的订单完全错误,并且在您的增强ControlEvents有机会运行之前,NewDialog[NEXTDIALOG]正在处理中。解决方案
<Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Default="yes" Text="!(loc.WixUINext)">
<Publish Event="NewDialog" Value="CustomizeDlg" Order="10">1</Publish>
<Publish Property="RECOGVERSION" Value="[RECOGVERSION]" Order="11">1</Publish>
</Control>
1.
1.
解决方案
<Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Default="yes" Text="!(loc.WixUINext)">
<Publish Event="NewDialog" Value="CustomizeDlg" Order="10">1</Publish>
<Publish Property="RECOGVERSION" Value="[RECOGVERSION]" Order="11">1</Publish>
</Control>
1.
1.
像这样运行msi:msiexec/i myprod.msi/l*v install.log wxs在我看来是正确的。日志中有提取:像这样运行msi:msiexec/i myprod.msi/l*v install.log wxs在我看来是正确的。日志中有提取: