目前我已经定制了Wix_InstallDirDlg以使用户能够在安装时设置注册表项.在InstallDirDlg和MaintenanceTypeDlg之后会显示一个自定义对话框,以便它适合安装和修复方案.
原文链接:https://www.f2er.com/windows/365159.html自定义对话框具有链接到属性的单个文本框.此属性具有注册表搜索,以便在用户修复或升级时保留先前的值,并因此显示在自定义对话框中以供用户验证.该对话框在安装时工作正常,并创建了注册表项.但是,在修复时,将显示自定义对话框,并输入正确的注册表值(因此RegistrySearch正在运行),但修复完成后,键值为空.
<Property Id='SERVER_LISTEN_URL'> <RegistrySearch Id='ServerListenUrlRegSearch' Root='HKLM' Key='SOFTWARE\$(var.Manufacturer)\$(var.Name)' Name='ServerListenUrl' Type='raw' Win64='no' /> </Property> <Component Id="RegistryEntries" Guid="0234974B-6158-4312-90A7-56869809B42E"> <RegistryKey Id="ServerRegKey" Root="HKLM" Key='SOFTWARE\$(var.Manufacturer)\$(var.Name)' Action='createAndRemoveOnUninstall'> <RegistryValue Id="ServerListenUrlRegVal" Name='ServerListenUrl' Value='[SERVER_LISTEN_URL]' KeyPath='yes' Type='string' /> </RegistryKey> </Component> <Dialog Id="SettingsDlg"> <Control Id="ListenUrl" Type="Edit" X="20" Y="100" Width="320" Height="18" Property="SERVER_LISTEN_URL" Indirect="no" /> </Dialog>
我做错了什么?