我一直在研究一个新的Burn bootstrapper,它需要一个自定义选项页面。我已经得到了页面以查看它的需要和行为方式,但是需要根据上一次安装中选择的值来默认Options页面中的值。这些值存储在随引导程序一起安装的程序的INI文件中。
我已经将Burn GUI值存储在注册表中,因为我看到有一个用于Burn,但它似乎没有将注册表键读入GUI变量(或者在用户单击&#39后执行此操作) ;安装&#39)。有没有办法实现这个目标?
一个例子:
刻录变量(与主题文件中的GUI控件绑定)
<Variable Name="txtServer" bal:Overridable="yes" Type="string" Value=""/>
<Variable Name="txtDatabase" bal:Overridable="yes" Type="string" Value=""/>
<Variable Name="txtUserID" bal:Overridable="yes" Type="string" Value="id"/>
<Variable Name="txtPwd" bal:Overridable="yes" Type="string" Value="pwd"/>
<util:RegistrySearch Id="CustCode" Variable="txtCustCode" Root="HKLM" Key="SOFTWARE\[WixBundleManufacturer]\[WixBundleName]" Value="CustCode" Win64="no" Format="raw" Result="value" />
<util:RegistrySearch Id="Server" Variable="txtServer" Root="HKLM" Key="SOFTWARE\[WixBundleManufacturer]\[WixBundleName]" Value="Server" Win64="no" Format="raw" Result="value"/>
<util:RegistrySearch Id="Database" Variable="txtDatabase" Root="HKLM" Key="SOFTWARE\[WixBundleManufacturer]\[WixBundleName]" Value="Database" Win64="no" Format="raw" Result="value" />
<util:RegistrySearch Id="DBID" Variable="txtUserID" Root="HKLM" Key="SOFTWARE\[WixBundleManufacturer]\[WixBundleName]" Value="DBID" Win64="no" Format="raw" Result="value" />
<util:RegistrySearch Id="DBPWD" Variable="txtPwd" Root="HKLM" Key="SOFTWARE\[WixBundleManufacturer]\[WixBundleName]" Value="DBPWD" Win64="no" Format="raw" Result="value" />
注册表值将被读入变量,但不会显示在GUI / Options页面中。显示这一点非常重要,因此用户可以看到安装程序将使用的设置。如果可能的话,更喜欢从INI文件而不是注册表中读取。
有关如何实现这一目标的任何建议都会非常有用!