Tabela ImageFamilies (Patchwiz.dll)
Uma família de imagens é um grupo de uma ou mais imagens atualizadas de um produto que foram atualizadas para a versão mais recente. Cada imagem atualizada pode pertencer a apenas uma família. Imagens atualizadas pertencentes a uma família de imagens compartilham um ou mais arquivos. Cada família de imagens tem seu próprio arquivo de gabinete no arquivo .msp contendo os patches binários e novos arquivos necessários para atualizar as diferenças entre os arquivos de destino e atualizados. O arquivo de gabinete não replica os patches binários e os novos arquivos usados pelos arquivos compartilhados.
Uma tabela ImageFamilies que contém pelo menos um registro é necessária em cada banco de dados de criação de patch (arquivo.pcp). Esta tabela é usada pela função UiCreatePatchPackageEx.
A tabela ImageFamilies contém as informações de aplicação de patch que devem ser adicionadas à tabela Media. Um patch adiciona uma entrada à tabela Mídia. Cada registro nas tabelas ImageFamilies refere-se a um grupo de imagens de produto relacionadas que foram atualizadas para a versão mais recente do produto.
A tabela ImageFamilies tem as colunas a seguir. Um valor nulo poderá ser usado nas colunas MediaSrcPropName, MediaDiskId e FileSequenceStart se o patch for aplicado com o Windows Installer e Patchwiz.dll versão 2.0.
Coluna | Tipo | Chave | Nullable |
---|---|---|---|
Família | Texto | Y | N |
MediaSrcPropName | Texto | Y | |
MediaDiskId | inteiro | Y | |
FileSequenceStart | inteiro | Y | |
DiskPrompt | Texto | Y | |
VolumeLabel | Texto | Y |
Colunas
-
Família
-
O valor inserido nesse campo é um identificador para um grupo de imagens de produto relacionadas que foram atualizadas para a versão mais recente do produto. Limitado a um total de 8 caracteres alfanuméricos ou sublinhados. O instalador insira um fluxo de gabinete no arquivo de patch do Windows Installer (arquivo.msp) para cada família na tabela. O gabinete contém os patches binários e novos arquivos necessários para atualizar uma imagem de destino em uma imagem atualizada do produto. O instalador prefixa o nome da família com PCW_CAB_ para gerar o nome do fluxo do gabinete que ele insere no campo Gabinete da nova tabela Media entrada.
-
MediaSrcPropName
-
O valor inserido no campo Origem da nova tabela Media entrada da imagem atualizada. Esse campo só poderá ser nulo se você estiver usando a versão 2.0 do Patchwiz.dll e se a tabela MinimumRequiredMsiVersion na tabela propriedades do (Patchwiz.dll) estiver definida como 200.
-
MediaDiskId
-
O instalador insere esse valor no campo DiskId da nova tabela Media registro. O valor DiskID deve ser maior do que qualquer DiskID atual no pacote de destino. O limite para MediaDiskId é 32767. Esse campo só poderá ser nulo se você estiver usando a versão 2.0 do Patchwiz.dll e se a tabela MinimumRequiredMsiVersion na tabela propriedades do (Patchwiz.dll) estiver definida como 200.
-
FileSequenceStart
-
Esse campo é o número de sequência do arquivo inicial. Esse mesmo número de sequência de arquivos não deve existir em dois patches para o mesmo produto. Para garantir isso, o valor nesse campo deve ser maior do que todos os números de sequência usados em patches anteriores ou no pacote de instalação original. O maior número de sequência em um patch pode ser determinado adicionando o número total de entradas no arquivo do gabinete de patch ao número FileSequenceStart para esse patch. Uma maneira de determinar isso é examinar o arquivo .ddf gerado por Patchwiz.dll durante a criação do patch. O limite para FileSequenceStart é 32767. Esse campo só poderá ser nulo se você estiver usando a versão 2.0 do Patchwiz.dll e se a tabela MinimumRequiredMsiVersion na tabela propriedades do (Patchwiz.dll) estiver definida como 200.
-
DiskPrompt
-
O instalador insere esse valor no campo DiskPrompt da nova tabela Media registro.
-
VolumeLabel
-
O instalador insere esse valor no campo VolumeLabel do novo registro de mídia.
Observações
O patch adiciona o nome do gabinete no arquivo .msp ao campo Gabinete do novo registro adicionado à tabela Media. Como é um gabinete inserido, o nome é prefixado com um caractere '#'. O patch adiciona uma propriedade ao campo Origem do novo registro na tabela Mídia. Nenhum dos dois patches pode ter a mesma propriedade de origem.
Os arquivos compartilhados dentro da família de imagens devem ter a mesma chave de tabela de arquivos em cada imagem atualizada da família. Todas as chaves de tabela de arquivo compartilhadas entre as imagens atualizadas devem representar o mesmo arquivo e devem ser idênticas em todas as imagens atualizadas. A chave da tabela de arquivos é o valor inserido na coluna Arquivo da tabela arquivo .
O limite para MediaDiskId e FileSequenceStart é 32767. Para aumentar esse limite, exporte a tabela ImageFamilies para um arquivo .idt com Msidb.exe e altere o tipo de coluna de i2 para i4 ou I2 para I4 e importe o arquivo .idt de volta para o banco de dados .pcp. Transformações e patches não podem ser criados entre dois pacotes com tipos de coluna diferentes.