Página 1 de 1

Instalación de MSI con una actualización de MSP

Publicado: 3 de febrero de 2017 - 19:47
por f4242
Buen día,

Estoy implementando el software Antidote. Se proporciona mediante un archivo MSI para la instalación básica, y las actualizaciones se proporcionan como archivos MSP que deben pasarse con el argumento /update de msiexec.

Pensé en usar la variable "propiedades" de la función "install_msi_if_needed" para esto, pero no funciona porque agrega un ":" después de /update (que se espera que defina una propiedad, por lo que no es un error en sí mismo).

No he encontrado la manera de especificar una opción adicional para msiexec mediante la función "install_msi_if_needed". Sugiero agregar una variable "options" a la función "install_msi_if_needed" para que se puedan definir opciones adicionales para msiexec.

Para evitar el problema, implementé mi aplicación usando la función "ejecutar".

Código: Seleccionar todo

def install():
    print('installing antidote9-fr')
    path = os.path.dirname(os.path.realpath(__file__)) + '\\'

    # ne fonctionne pas, ne supporte pas /update
    #install_msi_if_needed(msi=base_msi, killbefore=antidote_apps, properties={'/update': path + update_msp, 'TRANSFORMS': 'Reseau.mst'})
    #install_msi_if_needed(msi=base_msi_fr, killbefore=antidote_apps, properties={'/update': path + update_msp_fr})

    killalltasks(exenames=antidote_apps)
    run('msiexec /norestart /q /i ' + base_msi + ' /update ' + path + update_msp + ' TRANSFORMS=Reseau.mst')
    run('msiexec /norestart /q /i ' + base_msi_fr + ' /update ' +  path + update_msp_fr)