Compartir a través de


Acciones de acondicionamiento para ejecutar durante la eliminación

Hay dos maneras de crear la base de datos de instalación para que solo se llame a una acción cuando se desinstale el paquete:

  • Si la acción se secuencia después de la acción InstallValidate en la tabla InstallExecuteSequence, el autor del paquete puede especificar una condición de REMOVE="ALL" para la acción en la columna Condition. Tenga en cuenta que no se garantiza que la propiedad REMOVE se establezca en ALL durante una desinstalación antes de que el instalador ejecute la acción InstallValidate. Tenga en cuenta que las comillas alrededor del valor ALL son necesarias en este caso.
  • Si la acción se secuencia después de la acción CostFinalize y las acciones que podrían cambiar el estado de la característica, como la acción MigrateFeatureStates, la acción puede estar condicionada en el estado de una característica o un componente determinados. Vea Sintaxis de instrucciones condicionales. Use esta opción para llamar a una acción durante la eliminación de una característica o un componente determinados, que puede producirse fuera de la eliminación completa de la aplicación.

Tenga en cuenta que la propiedad Installed se puede usar en expresiones condicionales para determinar si un producto está instalado por equipo o para el usuario actual. Para determinar si el producto está instalado para otro usuario, compruebe la propiedad ProductState.

Tenga en cuenta que las versiones anteriores de un producto se pueden quitar durante una actualización mediante la acción RemoveExistingProducts. La tabla Upgrade también puede establecer la propiedad REMOVE en ALL en este caso. Para determinar si un producto se va a quitar mediante una actualización, compruebe la propiedad UPGRADINGPRODUCTCODE. El instalador solo establece esta propiedad cuando RemoveExistingProducts quita el producto. El instalador no establece la propiedad durante una desinstalación normal, como la eliminación con Agregar o quitar programas.