Instalaciones simultáneas
Instalaciones simultáneas, también denominadas instalaciones anidadas, es una característica en desuso de Windows Installer. Las aplicaciones instaladas con instalaciones simultáneas pueden producir un error, ya que son difíciles de atender correctamente a los clientes. No use instalaciones simultáneas para instalar productos destinados a ser lanzados al público. Las instalaciones simultáneas pueden tener una aplicabilidad limitada en entornos corporativos controlados cuando se usan para instalar aplicaciones que no están pensadas para la versión pública. La documentación de instalaciones simultáneas se proporciona a los autores de paquetes que desean usar instalaciones simultáneas con aplicaciones que no son para la distribución pública.
Una acción de instalación simultánea instala otro paquete de Windows Installer durante una instalación que se está ejecutando actualmente. Una instalación simultánea se agrega a un paquete mediante la creación de una acción de instalación simultánea en la tabla customAction de y la programación de esta acción personalizada en las tablas de secuencia. El campo Destino de la tabla CustomAction contiene una cadena de configuración de propiedades públicas usada por la instalación simultánea. El campo Origen de la tabla CustomAction identifica el paquete simultáneo. Una acción de instalación simultánea solo puede reinstalar o quitar una aplicación que haya instalado el paquete de instalación de la aplicación actual.
El tipo de acción de instalación simultánea se especifica en el campo Tipo de la tabla CustomAction. Según el tipo de acción personalizada, el paquete de la aplicación simultánea puede residir en un substorage del paquete principal, como un archivo en una ubicación especificada por una propiedad o como una aplicación anunciada en el equipo del usuario. Los siguientes tipos de acciones personalizadas realizan una instalación simultánea.
Tipo de acción personalizada | Descripción |
---|---|
tipo de acción personalizada 7 | Instalación simultánea de un producto que reside en el paquete de instalación. |
tipo de acción personalizada 23 | Instalación simultánea de un paquete de instalador dentro del árbol de origen actual. |
tipo de acción personalizada 39 | Instalación simultánea de un paquete de instalador anunciado. |
Una instalación simultánea comparte la misma interfaz de usuario y la misma configuración de registro que la instalación principal.
Las acciones de instalación simultáneas deben colocarse entre la acción InstallInitialize de y acción InstallFinalize de la secuencia de acciones de la instalación principal. Tras la reversión de la instalación principal, el instalador también revertirá la instalación simultánea. El uso de ejecución diferida con acciones de instalación simultáneas no es necesario porque el instalador combina información de reversión de las instalaciones simultáneas y principales. Todos los cambios se invierten en una instalación de reversión.
Los valores devueltos para las acciones de instalación simultáneas son los mismos que para otras acciones personalizadas. Consulte valores devueltos de acción personalizada.
Las acciones estándar o personalizadas que especifican un reinicio automático del sistema, o solicitan al usuario que se reinicie, también pueden realizar el reinicio o la solicitud desde dentro de una instalación simultánea.
Una vez que el instalador inicia una instalación simultánea, bloquea todas las demás instalaciones hasta que se complete la instalación simultánea y antes de continuar con la instalación principal. El instalador solo puede ejecutar instalaciones simultáneas como acciones personalizadas sincrónicas. Consulte acciones personalizadas sincrónicas y asincrónicas. Las marcas de opción descritas en Opciones de procesamiento de retorno de acción personalizada deben establecerse en ninguno (+0) o msidbCustomActionTypeContinue (+64).
Una acción de instalación simultánea puede instalar una aplicación para que se ejecute localmente, para que se ejecute desde el origen, para volver a instalarse o para quitarse de la misma manera que al usar MsiInstallProduct para una instalación normal. Para especificar el tipo de instalación, pase el ADDLOCAL, ADDSOURCE, REINSTALARo propiedad REMOVE a la acción de instalación simultánea.
Las acciones de instalación simultáneas se pueden crear en pares, una acción que se usa para instalar y la otra acción que se usa para quitar la instalación simultánea. Un tipo de acción personalizada 7 o tipo de acción personalizada 23 se usa normalmente para instalar. Normalmente se usa un tipo de acción personalizada 39 para quitar la instalación simultánea cuando se desinstala el producto primario. El registro de la acción personalizada de eliminación en la tabla CustomAction puede tener el GUID de código de producto en el campo Origen y "REMOVE=ALL" en el campo Destino. Las dos acciones personalizadas deben crearse en la tabla de secuencia de acciones con condiciones mutuamente excluyentes. Por ejemplo, la acción personalizada que instala el producto puede tener "NOT Installed" en su campo Condición y la acción personalizada quita la instalación simultánea puede tener REMOVE="ALL" en su campo Condición.
No hay ningún método para consultar un paquete por su costo. Esto dificulta el costo de las instalaciones simultáneas. Las filas deben agregarse a la tabla ReserveCost para indicar las carpetas y los costos en peor de los casos del componente asociado a la instalación simultánea.
Las únicas opciones de procesamiento de devolución de acción personalizada disponibles con acciones de instalación simultáneas no son (+0) ni msidbCustomActionTypeContinue (+64).
Tenga en cuenta que una instalación primaria no puede llamar a su propio paquete como una acción de instalación simultánea.
Tenga en cuenta que si una instalación por máquina intenta ejecutar una instalación simultánea por usuario, el instalador registra la instalación primaria según el usuario de forma predeterminada. Esto puede hacer que el instalador quite incorrectamente la aplicación porque el instalador intenta desinstalar la aplicación por máquina cuando se registra realmente como por usuario. Para forzar el estado de una instalación simultánea para realizar un seguimiento del estado de su instalación primaria, escriba ALLUSERS="[ALLUSERS]" en la columna Destino de la tabla CustomAction. En este caso, la instalación simultánea es por máquina si el elemento primario es por máquina y la instalación simultánea es por usuario si el elemento primario es por usuario.
Los desarrolladores deben tener en cuenta las siguientes advertencias al crear instalaciones simultáneas.
- Las instalaciones simultáneas no pueden compartir componentes.
- Una instalación administrativa tampoco puede contener una instalación simultánea.
- Es posible que la aplicación de revisiones y la actualización no funcionen con instalaciones simultáneas.
- Es posible que el instalador no coste correctamente una instalación simultánea.
- Las barras de progreso integradas no se pueden usar con instalaciones simultáneas.
- La instalación simultánea no puede instalar los recursos que se van a anunciar.
- Un paquete que realiza una instalación simultánea de una aplicación también debe desinstalar la aplicación simultánea cuando se desinstala el producto primario.
Para evitar que un paquete se instale nunca como una instalación simultánea, agregue cualquiera de las siguientes instrucciones condicionales a la tabla LaunchCondition. Esto impide que el paquete se instale nunca mediante una acción de instalación simultánea ejecutada por otra instalación. Esto no impide que el paquete se quite mediante la acción RemoveExistingProducts. Vea también la propiedadparentOriginalDatabase dey parentProductCode.
"Not ParentProductCode"
"Not ParentOriginalDatabase"