Установщик Wix пропускает параметры реестра при восстановлении

В настоящее время я настроил Wix_InstallDirDlg, чтобы пользователь мог задать ключ реестра при установке. Существует настраиваемый диалог, который отображается после InstallDirDlg и MaintenanceTypeDlg, так что он обслуживает как сценарии установки, так и восстановления.

Настраиваемое диалоговое окно имеет одно текстовое поле, которое связано со свойством. Это свойство имеет поиск в реестре, поэтому, если пользователь исправляет или обновляет предыдущее значение, сохраняется и, следовательно, отображается в настраиваемом диалоговом окне для проверки пользователем. Диалог отлично работает при установке, и создается раздел реестра. Однако при восстановлении появляется настраиваемое диалоговое окно с введенным правильным значением реестра (так что 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>

Что я сделал не так?

8
задан caveman_dick 13 May 2011 в 19:08
поделиться