Installation 如何在WiX中为用户输入创建自定义对话框?
我正在使用WiX为windows服务创建安装程序。在服务中安装和显示的服务名称最好在安装时可配置 例如,这就是我的想法(wix xml snip):Installation 如何在WiX中为用户输入创建自定义对话框?,installation,wix,Installation,Wix,我正在使用WiX为windows服务创建安装程序。在服务中安装和显示的服务名称最好在安装时可配置 例如,这就是我的想法(wix xml snip): 名称\u从\u对话框传递\u是我想连接到一个自定义对话框的东西,该对话框将被创建并显示给安装服务的人员,以便他们可以设置/修改服务名称。我认为这与设置并传递给WIXUI\u INSTALLDIR对话框集的WIXUI\u INSTALLDIR属性非常相似 我的问题是: 如何创建一个自定义UI对话框,以接受用户输入,并将其传递到安装程序的运行时?享
名称\u从\u对话框传递\u是我想连接到一个自定义对话框的东西,该对话框将被创建并显示给安装服务的人员,以便他们可以设置/修改服务名称。我认为这与设置并传递给WIXUI\u INSTALLDIR对话框集的WIXUI\u INSTALLDIR属性非常相似
我的问题是:
如何创建一个自定义UI对话框,以接受用户输入,并将其传递到安装程序的运行时?享受UI带来的乐趣
编辑:答案的原始链接不再存在。FireGiant(Wix的维护者)是这个过程的一部分,但它并没有完全回答这个问题。有(2018年8月更新:链接从Wayback机器中恢复)确实在很大程度上回答了这个问题
将要发生的事情的高层次概述如下:
这是一个很好的创建UI的工具是的,我强烈建议复制一个与您想要的有点相似的现有对话框,并从中进行调整。比从头开始构建要容易得多,IMHO.Answer的链接已经失效,在点击网站后,我在这里找到了教程:仅供参考,该教程没有给出如何执行答案中提到的内容的示例。它没有创建属性,没有让UI设置属性,也没有提到将引用该属性的服务。也许这些文献存在于2009年,但在2016年却什么都没有。@andy链接已经死了。我们一定要看看这个。:)我有一个问题,在对话框中启用RadioButtonGroup似乎会禁用它后面的文本输入字段。WixEdit允许我立即看到RadioButtonGroup不可见地覆盖了以下文本输入字段。非常感谢您提供的信息。这里有一个在ProjectInstaller安装方法中使用savedState dict的好例子。
<ServiceInstall
Id="MyServiceInstaller"
Name="NAME_PASSED_FROM_DIALOG"
Type="ownProcess"
Start="auto"
ErrorControl="normal"
Description="My Service"
Account="localsystem"/>
<ServiceControl
Id="StartMyServiceInstaller"
Name="NAME_PASSED_FROM_DIALOG"
Start="install"
Wait="no" />
<ServiceControl
Id="StopMyServiceInstaller"
Name="NAME_PASSED_FROM_DIALOG"
Remove="uninstall"
Stop="both"
Wait="yes" />