我试图实现下一个场景: “欢迎对话框” - >“服务名称的对话框” - >“安装路径对话框”WIX安装程序 - 变量传递到下一个窗口
服务名称对话框是一个自定义一个。用户应该输入服务的名称,然后按'Next'按钮 - 在'安装路径对话框'出现默认路径,如“..... \ inserted_value_on_previous_window”。
在“服务名称的对话框”我有编辑控件来实现,如:
<Control Id="ServiceValueEdit" Type="Edit" X="15" Y="60" Width="200" Height="15" Property="WIXUI_SELECTEDSERVICENAME" Indirect="yes" />
所以它应该设置WIXUI_SELECTEDSERVICENAME属性。 对于在“安装路径对话框”设置默认安装路径,我使用如下代码:
<Property Id="WIXUI_SELECTEDSERVICENAME" Value="SELECTEDSERVICENAME"></Property>
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR"></Property>
<SetDirectory Id="INSTALLDIR" Value="[DEFIISFOLDER]\[WIXUI_SELECTEDSERVICENAME]" Sequence="both"></SetDirectory>
但不幸的是,当我们去“SERVIC名对话”,并设置任何价值 - 它不会反映在下一屏幕。下一个窗口将会有默认值SELECTEDSERVICENAME。我认为它在编译时只设置一个,并且在运行时不会更新。
任何人都可以帮忙搞清楚如何从一个窗口设置这个值并将其传递给下一个窗口? 谢谢。
所以我想要做的就是让这个字符串下面的对话框包含“名称”(在图片上abowe如图所示),而不是“SELECTEDSERVICENAME '如下所列。
使用Value =“[DEFIISFOLDER] \ [SELECTEDSERVICENAME]”而不是您使用的内容.WIXUI_SELECTEDSERVICENAME是间接属性。 –
谢谢您关于间接财产的提示! – Oleksii