Tabella ImageFamilies (Patchwiz.dll)
Una famiglia di immagini è un gruppo di una o più immagini aggiornate di un prodotto che sono state aggiornate 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 un proprio file CAB nel file MSP contenente le patch binarie e i nuovi file necessari per aggiornare le differenze tra i file di destinazione e aggiornati. Il file CAB non replica le patch binarie e i nuovi file usati dai file condivisi.
In ogni database di creazione di patch (file con estensione pcp) è necessaria una tabella ImageFamilies contenente almeno un record. Questa tabella viene usata dalla funzione uiCreatePatchPackageEx.
La tabella ImageFamilies contiene le informazioni di applicazione di patch da aggiungere alla tabella Media. Una patch aggiunge una voce alla tabella Media. Ogni record nelle tabelle ImageFamilies fa riferimento a un gruppo di immagini di 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 a Windows Installer e Patchwiz.dll versione 2.0.
Colonna | Digitare | Chiave | Nullable |
---|---|---|---|
Famiglia | Testo | Y | N |
MediaSrcPropName | Testo | Y | |
MediaDiskId | numero intero | Y | |
FileSequenceStart | numero intero | Y | |
DiskPrompt | Testo | Y | |
VolumeLabel | Testo | Y |
Colonne
-
famiglia
-
Il valore immesso in questo campo è un identificatore per un gruppo di immagini di 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 cab nel file patch di Windows Installer (file msp) per ogni famiglia della 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 antepone il nome della famiglia con PCW_CAB_ per generare il nome del flusso del file cab immesso nel campo Cab della nuova voce tabella media.
-
MediaSrcPropName
-
Valore immesso nel campo Origine della nuova tabella media voce 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) è impostato su 200.
-
MediaDiskId
-
Il programma di installazione immette questo valore nel campo DiskId del nuovo record tabella media. Il valore DiskID deve essere maggiore di qualsiasi DiskID 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) è impostato su 200.
-
FileSequenceStart
-
Questo campo è il numero di sequenza per il file iniziale. Questo stesso numero di sequenza di file non deve esistere in due patch per lo stesso prodotto. Per garantire questo problema, 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 maggiore in una patch può essere determinato aggiungendo il numero totale di voci nel file cab patch al numero FileSequenceStart per tale patch. Un modo per determinare questo problema 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) è impostato su 200.
-
DiskPrompt
-
Il programma di installazione immette questo valore nel campo DiskPrompt del nuovo record tabella media.
-
VolumeLabel
-
Il programma di installazione immette questo valore nel campo VolumeLabel del nuovo record Multimediale.
Osservazioni
La patch aggiunge il nome del file CAB nel file MSP al campo Cabinet del nuovo record aggiunto alla tabella Media. Poiché si tratta di un cabinet incorporato, il nome è preceduto da un carattere '#'. La patch aggiunge una proprietà al campo Origine del nuovo record nella tabella Media. Nessuna 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 dei 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 con estensione idt nel database con estensione pcp. Le trasformazioni e le patch non possono essere create tra due pacchetti con tipi di colonna diversi.