Compartilhar via


Sobre as transformações

Uma transformação é uma coleção de alterações aplicadas a uma instalação. Ao aplicar uma transformação a um pacote de instalação base, o instalador pode adicionar ou substituir dados no banco de dados de instalação. O instalador só pode aplicar transformações durante uma instalação.

O instalador registra uma lista de transformações exigidas pelo produto durante a instalação. O instalador deve aplicar essas transformações ao pacote de instalação do produto ao configurar ou instalar o produto. Se uma transformação listada não estiver disponível e se a resiliência da origem da transformação não puder restaurá-la, a instalação falhará.

Uma transformação pode modificar informações que estão em qualquer tabela persistente no banco de dados do instalador. Uma transformação também pode adicionar ou remover tabelas persistentes no banco de dados do instalador. As transformações não podem modificar nenhuma parte de um pacote de instalação que não esteja em uma tabela do banco de dados, como informações no fluxo de informações de resumo, informações em substorages ou arquivos em gabinetes inseridos.

As transformações têm um fluxo de informações de resumo que pode conter condições de validação e condições de erro. As condições de validação e erro de transformação podem ser adicionadas às informações de resumo usando a função MsiCreateTransformSummaryInfo. As condições de validação controlam se o instalador pode aplicar a transformação a um determinado banco de dados de instalação. A validação da transformação pode ser condicionada aos valores das propriedades UpgradeCode, ProductCode, ProductVersion e ProductLanguage especificadas na transformação e aquelas no banco de dados de instalação. As condições de erro de transformação controlam quais erros são suprimidos quando a transformação é aplicada. As condições de erro incluídas na transformação são substituídas pelas condições de erro especificadas usando os métodos MsiDatabaseApplyTransform e ApplyTransform.

Observação

As transformações de personalização típicas não têm condições de validação nem são validadas em relação ao ProductCode. As transformações armazenadas em pacotes de patch geralmente têm condições de validação estritas para garantir que a transformação correta seja aplicada ao destino do patch.

 

Há três tipos de transformações do Windows Installer: