Cambio del código de producto
El código de producto es un GUID, que es la principal identificación de una aplicación o producto. Consulte Códigos de producto.
Por lo general, una actualización que cumpla las siguientes directrices no requiere un cambio del código del producto y se puede controlar como una actualización pequeña, o si la versión se va a cambiar, como una actualización secundaria:
- La actualización puede ampliar o reducir el árbol de componentes de características, pero no debe reorganizar la jerarquía existente de características y componentes que describen las tablas Feature y FeatureComponents . Puede agregar una nueva característica al árbol de componentes de características existente. Si esto quita una característica primaria, también debe quitar todas las características secundarias de la característica eliminada.
- La actualización puede agregar un nuevo componente a una característica nueva o existente.
- La actualización no debe cambiar el código del componente de ningún componente. Por lo tanto, una actualización pequeña o una actualización secundaria nunca debe cambiar el nombre del archivo de clave de un componente porque esto requeriría cambiar el código del componente.
- La actualización no debe cambiar el nombre del archivo .msi del paquete de instalación. En su lugar, dado que modifica el paquete, debe cambiar el código del paquete. Tenga en cuenta que esto significa que la actualización puede cambiar las tablas, las acciones personalizadas y los diálogos del archivo .msi sin cambiar el nombre del archivo.
- La actualización puede agregar, quitar o modificar los archivos, las claves del Registro o los métodos abreviados de componentes que no se comparten entre dos o más características. Si la actualización modifica un archivo con versiones, la versión del archivo debe incrementarse en la tabla File. Si la actualización quita los recursos, también se debe actualizar las tablas RemoveFile y RemoveRegistry para quitar los archivos no utilizados, las claves del Registro o los accesos directos ya instalados.
- La actualización de un componente compartido por dos o más características debe ser compatible con versiones anteriores con todas las aplicaciones y características que usan el componente. La actualización puede modificar el recurso de un componente compartido, como archivos, entradas del Registro y accesos directos siempre y cuando los cambios sean compatibles con versiones anteriores. No se recomienda que la actualización agregue o quite archivos, entradas del Registro o accesos directos de un componente compartido.
- Una pequeña actualización se envía como un paquete de revisión de Windows Installer. (Normalmente, no se proporciona una pequeña actualización de un producto completo cd-ROM).
El código del producto debe cambiarse si se cumple alguna de las siguientes condiciones para la actualización:
- Las instalaciones coexistentes de productos originales y actualizados en el mismo sistema deben ser posibles.
- Se ha cambiado el nombre del archivo .msi.
- El código de componente de un componente existente ha cambiado.
- Se quita un componente de una característica existente.
- Una característica existente se ha convertido en un elemento secundario de una característica existente.
- Se ha quitado una característica secundaria existente de su característica primaria.
Tenga en cuenta que agregar una nueva característica secundaria, que consta completamente de nuevos componentes, a una característica existente no requiere cambiar el código del producto.
Las nuevas características secundarias se pueden crear incluyendo msidbFeatureAttributesFollowParent y msidbFeatureAttributesUIDisallowAbsent en el campo Attributes de la tabla Feature. Si la actualización secundaria solo agrega nuevas características secundarias, REINSTALL=ALL es suficiente para forzar la instalación de las nuevas características secundarias. Para obtener más información, consulte Control de los estados de selección de características.
Una nueva característica secundaria puede estar oculta al usuario. Para sincronizar el estado de instalación de una nueva característica secundaria con su característica primaria, establezca los bits msidbFeatureAttributesFollowParent y msidbFeatureAttributesUIDisallowAbsent para la característica secundaria.
Temas relacionados