Condividi tramite


Ordinamento dei numeri di sequenza di file in un file cab, una tabella file e una tabella multimediale

La tabella File contiene un elenco completo di tutti i file di origine per l'installazione. I file possono essere archiviati nel supporto di origine come singoli file o compressi all'interno di file CAB. I numeri di sequenza nella colonna Sequenza della tabella File, insieme al campo LastSequence della tabella Media, specificano sia l'ordine di installazione per i file che il supporto di origine in cui si trova ogni file. Ogni record nella tabella Media identifica il disco di origine contenente tutti i file con numeri di sequenza minori o uguali al valore visualizzato nella colonna LastSequence e maggiore del valore LastSequence del disco precedente.

Si supponga, ad esempio, che un file abbia un numero di sequenza di 92 immesso nella colonna Sequenza della tabella File. Per determinare il disco di origine in cui si trova questo file, il programma di installazione controlla il record della tabella Media per la voce con il valore LastSequence più piccolo maggiore di 92. La colonna DiskId è la chiave primaria per la tabella Media e questo campo identifica in modo univoco il disco nella tabella.

Il limite massimo per il numero di file che è possibile elencare nella tabella File di un pacchetto di Windows Installer è 32767 file. Per creare un pacchetto di Windows Installer contenente più file, vedere Creazione di un pacchetto di grandi dimensioni.

Gli autori di pacchetti possono ridurre le dimensioni dei pacchetti di installazione comprimendo i file di origine e includendoli nei file CAB. L'immagine del file di origine può essere compressa, non compressa o una combinazione di entrambi i tipi. Per altre informazioni sulle origini compresse e non compresse, vedere Origini compresse e non compresse. I file di origine compressi devono essere archiviati all'interno di un file CAB. I file compressi all'interno di un cabinet hanno i propri numeri di sequenza interni. I valori di questi numeri di sequenza interni non devono corrispondere al valore dei numeri di sequenza all'interno della tabella File. Tuttavia, la sequenza dei file specificati nella tabella File deve essere identica alla sequenza effettiva dei file all'interno degli archivi. I numeri di sequenza dei file non compressi non devono essere univoci. Ad esempio, se tutti i file non sono compressi e si trovano su un disco, tutti i file possono avere lo stesso numero di sequenza nella tabella File.

La tabella Supporti descrive il set di dischi che costituiscono il supporto di origine per l'installazione. La prima voce nella tabella Media deve avere sempre un valore 1 nel campo DiskId. I file devono essere organizzati nel supporto di origine in modo che tutti i file su disco 1 abbiano numeri di sequenza di tabella file inferiori ai numeri di sequenza dei file sul disco 2 e tutti i numeri di sequenza su disco 2 devono essere inferiori rispetto al disco 3 e così via. Questo requisito si applica anche a un disco che contiene origini compresse e non compresse. Ad esempio, se le origini multimediali per l'installazione si trovano su due dischi di origine e se il disco 1 contiene sia file non compressi che un file CAB, entrambi i file non compressi e i file nel file cab devono avere numeri di sequenza inferiori al numero di sequenza più piccolo di qualsiasi file archiviato sul disco 2. Se tutti i file nel disco 1 vengono compressi in un file CAB, è possibile creare la tabella Media come illustrato nella tabella seguente.

Tabella multimediale (parziale)

DiskId LastSequence DiskPrompt Armadietto VolumeLabel
1 5 1 mycab.cab Disco 1
2 10 2 Disco 2

 

Se alcuni file su disco 1 vengono compressi in un archivio e alcuni sono non compressi, la tabella Media può essere creata come segue.

Tabella multimediale (parziale)

DiskId LastSequence DiskPrompt Armadietto VolumeLabel
1 5 1 Disco 1
2 10 1 mycab.cab Disco 1
3 15 2 Disco 2

 

Si noti che la creazione nella tabella Media seguente non è corretta perché specifica alcuni numeri di sequenza di file sul disco 2 che sono più piccoli di alcuni file all'interno del cabinet su disco 1.

Tabella multimediale

DiskId LastSequence DiskPrompt Armadietto VolumeLabel
1 5 1 Disco 1
2 10 2 Disco 2
3 15 1 mycab.cab Disco 1

 

I file di grandi dimensioni possono essere suddivisi tra due o più file CAB. Non possono essere presenti più di 15 file in un file CAB che si estende al file CAB successivo. Ad esempio, se si dispone di tre file CAB, il primo cab può avere 15 file che si estendono al secondo file CAB e il secondo cab può avere 15 file che si estendono al terzo file CAB. Quando si aggiunge un record alla tabella File per più archivi file, usare la prima parte del file per specificare il numero di sequenza di file immesso nella colonna Sequenza.

Le tabelle File e Supporti possono essere create come indicato di seguito se sono presenti tre file, due archivi e due dischi. In questo esempio, c1.cab risiede su disk1 e c2.cab risiede su disk2. Il file f2 si estende su entrambi gli archivi. L'c1.cab cabrio contiene l'intero file f1 e la prima parte del file f2. Il c2.cab cabinet contiene la seconda parte di f2 e l'intero file f3.

Tabella multimediale (parziale)

DiskId LastSequence DiskPrompt Armadietto VolumeLabel
1 5 1 c1.cab Disco 1
2 10 2 c2.cab Disco 2

 

Tabella file (parziale)

File Sequenza
f1 1
f2 2
f3 6