Tabella ImageFamilies (Patchwiz.dll)
Una famiglia di immagini è un gruppo di una o più immagini aggiornate di un prodotto aggiornato alla versione più recente. Ogni immagine aggiornata può appartenere a una sola famiglia. Le immagini aggiornate appartenenti a una famiglia di immagini condividono uno o più file. Ogni famiglia di immagini ha il proprio file cabinet nel file msp contenente le patch binarie e i nuovi file necessari per aggiornare le differenze tra file di destinazione e aggiornati. Il file cabinet non replica le patch binarie e i nuovi file usati dai file condivisi.
Una tabella ImageFamilies contenente almeno un record è necessaria in ogni database di creazione di patch (file con estensione pcp). Questa tabella viene usata dalla funzione UiCreatePatchPackageEx .
La tabella ImageFamilies contiene le informazioni di patch che devono essere aggiunte alla tabella Media. Una patch aggiunge una voce alla tabella Supporti. Ogni record nelle tabelle ImageFamilies fa riferimento a un gruppo di immagini del prodotto correlate aggiornate alla versione più recente del prodotto.
La tabella ImageFamilies contiene le colonne seguenti. È possibile usare un valore Null nelle colonne MediaSrcPropName, MediaDiskId e FileSequenceStart se la patch viene applicata con Windows Installer e Patchwiz.dll versione 2.0.
Colonna | Tipo | Chiave | Nullable |
---|---|---|---|
Famiglia | text | S | N |
MediaSrcPropName | text | S | |
MediaDiskId | numero intero | S | |
FileSequenceStart | numero intero | S | |
DiskPrompt | text | S | |
VolumeLabel | text | S |
Colonne
-
Famiglia
-
Il valore immesso in questo campo è un identificatore per un gruppo di immagini del prodotto correlate aggiornate alla versione più recente del prodotto. Limitato a un totale di 8 caratteri alfanumerici o caratteri di sottolineatura. Il programma di installazione incorpora un flusso cabinet nel file di patch di Windows Installer (file con estensione msp) per ogni famiglia nella tabella. L'archivio contiene le patch binarie e i nuovi file necessari per aggiornare un'immagine di destinazione in un'immagine aggiornata del prodotto. Il programma di installazione prefissi il nome della famiglia con PCW_CAB_ per generare il nome del flusso del gabinetto immesso nel campo Cabinet della nuova voce della tabella Media .
-
MediaSrcPropName
-
Il valore immesso nel campo Origine della nuova voce della tabella Media dell'immagine aggiornata. Questo campo può essere Null solo se si usa la versione 2.0 di Patchwiz.dll e se minimumRequiredMsiVersion nella tabella Proprietà (Patchwiz.dll) è impostata su 200.
-
MediaDiskId
-
Il programma di installazione immette questo valore nel campo DiskId del nuovo record di tabella Multimediale . Il valore DiskID deve essere maggiore di qualsiasi DiscoID corrente nel pacchetto di destinazione. Il limite per MediaDiskId è 32767. Questo campo può essere Null solo se si usa la versione 2.0 di Patchwiz.dll e se minimumRequiredMsiVersion nella tabella Proprietà (Patchwiz.dll) è impostata su 200.
-
FileSequenceStart
-
Questo campo è il numero di sequenza per il file iniziale. Lo stesso numero di sequenza di file non deve esistere in due patch per lo stesso prodotto. Per assicurarsi questo, il valore in questo campo deve essere maggiore di tutti i numeri di sequenza usati nelle patch precedenti o nel pacchetto di installazione originale. Il numero di sequenza più grande in una patch può essere determinato aggiungendo il numero totale di voci nel file del cabinet patch al numero FileSequenceStart per tale patch. Un modo per determinare questa operazione consiste nell'esaminare il file con estensione ddf generato da Patchwiz.dll durante la creazione della patch. Il limite per FileSequenceStart è 32767. Questo campo può essere Null solo se si usa la versione 2.0 di Patchwiz.dll e se minimumRequiredMsiVersion nella tabella Proprietà (Patchwiz.dll) è impostata su 200.
-
DiskPrompt
-
Il programma di installazione immette questo valore nel campo DiskPrompt del nuovo record di tabella Media .
-
VolumeLabel
-
Il programma di installazione immette questo valore nel campo VolumeLabel del nuovo record Multimediale.
Commenti
La patch aggiunge il nome del cabinet nel file msp al campo Cabinet del nuovo record aggiunto alla tabella Supporti. Poiché è un cabinet incorporato, il nome è preceduto da un carattere '#'. La patch aggiunge una proprietà al campo Source del nuovo record nella tabella Media. Nessuna due patch può avere la stessa proprietà di origine.
I file condivisi all'interno della famiglia di immagini devono avere la stessa chiave della tabella file in ogni immagine aggiornata della famiglia. Tutte le chiavi di tabella file condivise tra le immagini aggiornate devono rappresentare lo stesso file e devono essere identiche in tutte le immagini aggiornate. La chiave della tabella file è il valore immesso nella colonna File della tabella File.
Il limite per MediaDiskId e FileSequenceStart è 32767. Per aumentare questo limite, esportare la tabella ImageFamilies in un file con estensione idt con Msidb.exe e modificare il tipo di colonna da i2 a i4 o da I2 a I4 e quindi importare nuovamente il file idt nel database pcp. Le trasformazioni e le patch non possono essere create tra due pacchetti con tipi di colonna diversi.