Método Installer.ApplyPatch

Para cada produto listado pelo pacote de patch como qualificado para receber o patch, o método ApplyPatch do objeto Installer invoca uma instalação e define a propriedade PATCH como o caminho do pacote de patch.

Sintaxe

Installer.ApplyPatch(
  PatchPackage,
  InstallPackage,
  InstallType,
  CommandLine
)

Parâmetros

PatchPackage

Especifica um caminho para o pacote de patch.

InstallPackage

Se InstallType for definido como msiInstallTypeNetworkImage, InstallPackage especificará o caminho para o produto que deve ser corrigido. Se InstallType for definido como msiInstallTypeDefault e InstallPackage for definido como 0, o instalador aplicará o patch a todos os produtos qualificados listados no pacote de patch.

Se InstallType for msiInstallTypeSingleInstance, o instalador aplicará o patch ao produto especificado por InstallPackage. Nesse caso, outros produtos qualificados listados no pacote de patch são ignorados, e o parâmetro InstallPackage contém a cadeia de caracteres terminada em nulo que representa o código do produto da instância a ser corrigida. Esse tipo de instalação exige a versão do Windows Installer enviada com o Windows Server 2003 ou versões posteriores ou com o Windows Installer XP SP1 ou versões posteriores.

InstallType

Esse parâmetro especifica o tipo de instalação a ser corrigido. O parâmetro InstallType será ignorado se InstallPackage for omitido.

Valor Significado
msiInstallTypeNetworkImage
Indica uma instalação administrativa. Nesse caso, InstallPackage precisa ser definido como um caminho de pacote. Um valor igual a 1 para msiInstallTypeNetworkImage especifica uma instalação administrativa.
msiInstallTypeDefault
Pesquisa o sistema em busca de produtos que devem ser corrigidos. Nesse caso, InstallPackage precisa ser uma cadeia de caracteres vazia.
msiInstallSingleInstance
Aplica o patch ao produto especificado por InstallPackage. InstallPackage é o código do produto da instância a ser corrigida. Esse tipo de instalação exige a versão do Windows Installer enviada com o Windows Server 2003 ou versões posteriores ou com o Windows Installer XP SP1 ou versões posteriores. Para obter mais informações, confira Como instalar várias instâncias de produtos e patches.

 

CommandLine

Especifica as configurações de propriedade que estão sendo definidas na linha de comando. Consulte a seção Observações.

Valor retornado

Esse método não retorna um valor.

Comentários

Como o delimitador de lista para transformações, fontes e patches é um ponto e vírgula, esse caractere não deve ser usado para nomes de arquivos ou caminhos.

A propriedade REINSTALL é obrigatória ao aplicar um patch de pequena atualização ou de atualização secundária. Sem essa propriedade, o patch é registrado no sistema, mas não pode atualizar os arquivos.

Windows Installer 2.0: você precisa definir a propriedade REINSTALL na linha de comando ao aplicar um patch de pequena atualização ou de atualização secundária. Para os patches que não usam um Tipo de Ação Personalizada 51 para definir automaticamente as propriedades REINSTALL e REINSTALLMODE, a propriedade REINSTALL precisa ser definida explicitamente com o parâmetro CommandLine. Defina a propriedade REINSTALL para listar os recursos afetados pelo patch ou use uma configuração padrão prática de "REINSTALL=ALL". O valor padrão da propriedade REINSTALLMODE é "omus".

Windows Installer 3.0 e versões posteriores: a partir do Windows Installer versão 3.0, a propriedade REINSTALL é configurada pelo instalador e não precisa ser definida na linha de comando.

Requisitos

Requisito Valor
Versão
Windows Installer 5.0 no Windows Server 2012, no Windows 8, no Windows Server 2008 R2 ou no Windows 7. Windows Installer 4.0 ou Windows Installer 4.5 no Windows Server 2008 ou no Windows Vista. Windows Installer 3.0 ou versões posteriores no Windows Server 2003 ou no Windows XP.
DLL
Msi.dll
IID
O IID_IInstaller é definido como 000C1090-0000-0000-C000-000000000046

Confira também

MsiApplyPatch

Sobre propriedades

Sem suporte no Windows Installer 2.0 e versões anteriores