Wix: muestra un diálogo personalizado si se encuentra la versión anterior

Quiero personalizar mi instalador para mostrar un cuadro de diálogo personalizado cuando la versión anterior ya está instalada: después del cuadro de diálogo de bienvenida, el usuario debe ver un cuadro de diálogo personalizadoOldVersionDlg con información de que se encontró la versión anterior y se desinstalará automáticamente.

Pero por alguna razón los bienes establecidos porUpgradeVersion elemento siemprenull cuando lo compruebe en condiciones enUI/Publish Dialog.

Aquí hay fragmentos de código esenciales.

Product.wxs:

<Product Id="*" Version="$(var.Version)" UpgradeCode="$(var.ProductId)"
         Language="1033" Name="$(var.ProductFullName)" Manufacturer="$(var.Manufacturer)">
  <Package Description="$(var.ProductDescription)" InstallerVersion="200" Compressed="yes" 
           Manufacturer="$(var.Manufacturer)" />

  <Property Id="PREVIOUSVERSIONSINSTALLED" Secure="yes" />
  <Upgrade Id="$(var.ProductId)">
    <UpgradeVersion Minimum="1.0.0.0" Maximum="$(var.Version)"
                    Property="PREVIOUSVERSIONSINSTALLED"
                    IncludeMinimum="yes" IncludeMaximum="no" />
  </Upgrade>

  <InstallExecuteSequence>
    <RemoveExistingProducts Before="InstallInitialize" />
  </InstallExecuteSequence>
</Product>

WixUI_Wizard.wxs:

<Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="OldVersionDlg">PREVIOUSVERSIONSINSTALLED</Publish>
<Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="SetupTypeDlg">NOT Installed</Publish>

El botón Siguiente no funciona. He comprobado en los registros quePREVIOUSVERSIONSINSTALLED se establece despuésFindRelatedProducts. Si lo uso en condiciones enProduct.wxs entonces todo está bien. Pero en la configuración de la interfaz de usuario siempre esnull.

Gracias por cualquier ayuda.

Respuestas a la pregunta(1)

Su respuesta a la pregunta