WiX: Cambiar directorio .msi y tabla CustomAction con los cambios a ser utilizados por el archivo de revisión .msp

votos
0

con el conjunto de herramientas v3.11 Wix He creado un archivo .msi para mi aplicación (digamos versión 1.1) con un elemento de Directorio que se dirige a la LocalAppDataFolder y pone una carpeta Temp debajo. Esta estructura se utiliza con un elemento DirectoryRef para poner allí algunos archivos que se accede a una acción personalizada en InstallFinalize. Ahora me genera un programa (versión 1.2) que añade algunos archivos en la carpeta Temp. Pero quiero esa carpeta para estar en el TARGETDIR ahora. Así que cambié

<Directory Id=LocalAppDataFolder>
  <Directory Id=APPDATA_TEMP Name=Temp />
</Directory>

a

<Directory Id=MY_TEMP_PATH Name=.>
  <Directory Id=APPDATA_TEMP Name=Temp />
</Directory>

por debajo de la

<Directory Id=TARGETDIR Name=SourceDir>

estructura. Para el parche que se aplica correctamente Abrí el archivo .msi que se hace referencia en el registro (bajo HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Installer \ UserData \ ... \ los productos {GUID} \ InstallProperties \ LocalPackage ) con la de la orca herramienta y editó los valores correspondientes en la tabla de directorio. También he editado la tabla CustomActions hacer referencia a la nueva ruta ya que se utiliza como parámetro allí. Así pues, ahora al instalar el parche que pone todos los archivos (cambiado y los nuevos) en el LocalAppDataFolder como lo hizo con la instalación inicial. La acción personalizada se llama con el parámetro correcto sin embargo.

¿Hay una manera de cambiar las msi base para apuntar mi nueva carpeta Temp o, alternativamente, de alguna manera decirle al programa a utilizar la nueva carpeta, independientemente de la trayectoria inicial?

El objetivo es aplicar el parche sin tener que desinstalar la aplicación por primera vez.

Cualquier ayuda sobre cómo lograr que es muy apreciada.

Publicado el 09/10/2019 a las 18:51
fuente por usuario
En otros idiomas...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more