Criando um arquivo de propriedades de criação de patch
Para reproduzir o pacote de patch de exemplo, você precisa de uma ferramenta de software capaz de criar e editar um pacote de patch do Windows Installer. Várias ferramentas de criação de pacote de patch estão disponíveis de fornecedores de software independentes. O exemplo discutido nas seções a seguir usa um editor de banco de dados do Windows Installer chamado Orca para criar um arquivo de propriedades de criação de patch (extensão .pcp). O arquivo .pcp pode ser usado com os utilitários Msimsp.exe e Patchwiz.dll para gerar um pacote de patch do Windows Installer (extensão .msp). Orca, Msimsp.exe e Patchwiz.dll são fornecidos nos Componentes do SDK do Windows para desenvolvedores do Windows Installer.
Um arquivo de propriedades de criação de patch em branco, template.pcp, também é fornecido com o SDK. Faça uma cópia de template.pcp e renomeie essa cópia como MNP2000.pcp. Use o Orca ou outro editor de banco de dados para inserir os dados a seguir na tabela Properties de MNP2000.pcp. A tabela Properties contém configurações globais do pacote de patch.
Nome | Valor |
---|---|
AllowProductCodeMismatches | 1 |
AllowProductVersionMajorMismatches | 1 |
ApiPatchingSymbolFlags | 0x00000000 |
DontRemoveTempFolderWhenFinished | 1 |
IncludeWholeFilesOnly | 0 |
ListOfPatchGUIDsToReplace | |
ListOfTargetProductCodes | * |
PatchGUID | {5406B219-A1AC-4BC4-8695-72292C8195AC} |
PatchOutputPath | c:\output.msp |
PatchSourceList | PatchSourceList |
Use o editor de banco de dados para inserir os dados a seguir na tabela ImageFamilies de MNP2000.pcp. A tabela ImageFamilies contém informações a serem adicionadas à tabela Media durante a aplicação de patch.
Família | MediaSrcPropName | MediaDiskId | FileSequenceStart | DiskPrompt | VolumeLabel |
---|---|---|---|---|---|
MNPapps | MNPSrcPropName | 2 | 1000 |
Insira os dados a seguir na tabela UpgradedImages de MNP2000.pcp. A tabela UpgradedImages contém informações sobre a imagem atualizada que você criou em Planejando um patch de pequena atualização.
Atualizado | MsiPath | PatchMsiPath | SymbolPaths | Família |
---|---|---|---|---|
MNP_fixed | C:\Note_Installer\Patch\Upgraded\MNP2000.msi | MNPapps |
Insira os dados a seguir na tabela TargetImages de MNP2000.pcp. A tabela TargetImages contém informações sobre as imagens de destino.
Destino | MsiPath | SymbolPaths | Atualizado | Order | ProductValidateFlags | IgnoreMissingSrcFiles |
---|---|---|---|---|---|---|
MNP_error | C:\Note_Installer\Patch\Target\MNP2000.msi | MNP_fixed | 1 | 0 |
Para o pacote de patch de exemplo, deixe as tabelas a seguir em MNP2000.pcp em branco.
Tabela UpgradedFiles_OptionalData
Tabela TargetFiles_OptionalData