UiCreatePatchPackageEx (Patchwiz.dll)

A função UiCreatePatchPackageEx usa um arquivo de criação de pacote (arquivo .pcp) e gera um pacote de patch do Windows Installer (pacote .msp). A chamada a Msimsp.exe é o método recomendado para usar o Patchwiz.dll.

A função UiCreatePatchPackageEx está disponível a partir do Patchwiz.dll versão 4.0 e estende a funcionalidade da função UiCreatePatchPackage.

UINT UiCreatePatchPackageEx(
  LPCTSTR szPcpPath,              
  LPCTSTR szPatchPath,            
  LPCTSTR szLogPath,             
  HWND hwndStatus,                
  LPCTSTR szTempFolder,           
  BOOL fRemoveTempFolderContents,
  DWORD dwFlags,
  DWORD dwReserved    
);

Parâmetros

szPcpPath

Caminho completo para o arquivo de propriedades de criação de patch (arquivo .pcp) para esse patch.

szPatchPath

Caminho completo para o pacote de patch do Windows Installer (arquivo .msp) que deve ser criado. Esse parâmetro pode ser NULL ou uma cadeia de caracteres vazia, mas não pode ser omitido. Se ele for NULL ou uma cadeia de caracteres vazia, a função usará o valor de PatchOutputPath na tabela Property (Patchwiz.dll).

szLogPath

Caminho completo para um arquivo de log de texto que terá um acréscimo. Esse parâmetro pode ser NULL ou uma cadeia de caracteres vazia, mas não pode ser omitido.

hwndStatus

Identificador para uma janela que exibe o texto do status. Esse parâmetro pode ser NULL ou uma cadeia de caracteres vazia, mas não pode ser omitido.

szTempFolder

Local para os arquivos temporários. Esse parâmetro pode ser NULL ou uma cadeia de caracteres vazia, mas não pode ser omitido. O usuário deve ter privilégios suficientes para ler e gravar nessa pasta. O local padrão é %TMP%\~pcw_tmp.tmp\.

fRemoveTempFolderContents

Se ele for TRUE, removerá a pasta temporária e todo o conteúdo, se presente. Se ele for FALSE e a pasta estiver presente, ocorrerá uma falha na função.

dwFlags

Esse parâmetro pode ser definido como um ou uma combinação dos valores a seguir para especificar opções de log ou interface do usuário.

Sinalizador Valor Significado
LOGNONE 0x00000000 Não escreva nenhuma mensagem no log.
LOGINFO 0x00000001 Escreva mensagens informativas no log.
LOGWARN 0x00000002 Escreva avisos no log.
LOGERR 0x00000004 Escreva mensagens de erro no log.
LOGPERFMESSAGES 0x00000008 Grave mensagens de desempenho no log.
UINONE 0x00000000f Não exiba a interface do usuário.
UIALL 0x00000010 Exiba a interface do usuário.

 

dwReserved

Reservado. Esse parâmetro deve ser definido como zero.

Valores de retorno

Confira a tabela em Valores retornados para UiCreatePatchPackage.

Comentários

Para ver um exemplo de criação de um arquivo .pcp e do uso de UiCreatePatchPackage para gerar um pacote de patch do Windows Installer, confira a seção Um exemplo de aplicação de patch em uma pequena atualização.

A criação de um patch exige uma imagem de instalação descompactada, como uma imagem administrativa ou uma imagem de instalação descompactada de um CD-ROM. UiCreatePatchPackage não gera patches binários para arquivos em gabinetes.