Como instalar vários patches

A partir do Windows Installer 3.0, vários patches podem ser aplicados a um produto em uma ordem constante, independentemente da ordem em que os patches são fornecidos ao sistema.

Windows Installer 2.0: sem suporte. As versões do Windows Installer anteriores à versão 3.0 sempre instalam patches na ordem em que são fornecidos ao sistema.

Windows Installer 3.0 e posterior: o instalador pode usar as informações fornecidas na tabela MsiPatchSequence para determinar quais patches são aplicáveis ao pacote do Windows Installer e em qual ordem os patches devem ser aplicados. Os aplicativos podem usar as funções MsiDetermineApplicablePatches e MsiDeterminePatchSequence.

A função MsiDetermineApplicablePatches determina quais patches se aplicam ao pacote do Windows Installer e em qual sequência. A função pode levar em conta os patches substituídos ou obsoletos. Essa função não contabiliza os produtos ou patches instalados no sistema que não são especificados no conjunto.

A função MsiDeterminePatchSequence Sequence pode determinar a melhor sequência de aplicativos para os patches para um produto instalado especificado. Essa função é responsável por patches que já foram aplicados ao produto e contabiliza os patches obsoletos e substituídos.

Quando o pacote de patch não tem uma tabela MsiPatchSequence, o instalador sempre aplica os patches na ordem em que são fornecidos ao sistema.

Quando o pacote de patch contém uma combinação de patches com informações de sequência na tabela MsiPatchSequence e alguns patches sem essas informações, o Windows Installer versão 3.0 sequencia os patches na ordem descrita na seção a seguir: Sequenciando patches.

Um pacote do Windows Installer não pode instalar mais de 127 patches ao instalar ou atualizar um aplicativo. Quando muitas atualizações são necessárias, elas devem ser combinadas e os patches obsoletos anteriores devem ser eliminados da sequência de aplicação de patch.

Um patch que não deve ser usado pode ser eliminado da sequência de aplicação de patch. Isso impede que o patch seja aplicado quando o aplicativo de destino já tiver recebido o patch. Isso é diferente de remover um patch que já foi aplicado a um aplicativo. Para obter mais informações sobre como eliminar patches da sequência de aplicação de patch, consulte Eliminando patches. Para saber mais sobre como remover patches aplicados, confira Removendo patches.

Para obter um exemplo de como o Windows Installer aplica vários patches quando todos têm tabelas MsiPatchSequence, confira o Exemplo de aplicação de vários patches.