Condividi tramite


Tabella MsiPatchSequence

La tabella MsiPatchSequence contiene tutte le informazioni richieste dal programma di installazione per determinare la sequenza di applicazione di un piccolo aggiornamento patch rispetto a tutte le altre patch. La tabella deve trovarsi nel database del file patch e non in una trasformazione nella patch. Il programma di installazione ignora questa tabella quando si applica un principale aggiornamento patch. Quando si applica un patch di aggiornamento secondario, il programma di installazione usa solo questa tabella per identificare le patch sostituite che non devono essere sequenziate.

La tabella MsiPatchSequence include le colonne seguenti.

Colonna Digitare Chiave Nullable
PatchFamily identificatore Y N
ProductCode GUID Y Y
Sequenza versione N N
Attributi Integer N Y

 

Colonne

PatchFamily

Specifica che la patch è un membro della famiglia di patch denominata in questo campo. Le patch nella stessa famiglia di patch destinate alla stessa versione del prodotto sono ordinate in base ai valori nella colonna Sequence. Le patch all'interno della famiglia di patch vengono applicate al prodotto di destinazione nell'ordine di sequenza crescente. PatchFamily viene usato anche per determinare quali patch devono essere sostituite. Una patch può essere elencata in più righe e appartenere a più famiglie di patch se si applica a più prodotti o include più correzioni.

Windows Installer non interpreta il valore PatchFamily in alcun modo diverso dai confronti per l'uguaglianza con altri valori PatchFamily. Un valore PatchFamily deve essere univoco all'interno di ProductCode di destinazione del set di patch. Negli scenari di applicazione di patch complessi potrebbe essere necessario che l'identificatore PatchFamily sia univoco a livello globale.

ProductCode

Un valore in questo campo è facoltativo. Se in questo campo viene immesso un codice prodotto GUID e la patch viene applicata al prodotto specificato, la patch viene ordinata e applicata come membro dell'oggetto PatchFamily specificato. Se in questo campo viene immesso un GUID di codice prodotto e la patch non viene applicata al prodotto specificato da ProductCode, questa riga viene ignorata. Se il valore in ProductCode è NULL, la patch viene ordinata e applicata come membro di PatchFamily per tutte le destinazioni della patch indipendentemente dal codice prodotto.

Una patch può avere più righe nella stessa PatchFamily e un codice ProductCode diverso per ogni prodotto di destinazione della patch. Una riga per PatchFamily può specificare NULL per ProductCode. Se il prodotto di destinazione corrisponde a una riga con un codice ProductCode non NULL, il programma di installazione usa la riga corrispondente e ignora la riga con NULL ProductCode. Se nessuno dei codici di prodotto specificati corrisponde alla destinazione, la patch viene ordinata e applicata come membro di PatchFamily per tutte le destinazioni della patch indipendentemente dal codice prodotto.

sequenza

Il valore nella colonna Sequence specifica la sequenza di questa patch all'interno dell'oggetto PatchFamily specificato. Il valore in Sequence viene espresso nel formato dei dati di Version. Il valore contiene tra 1 e 4 campi e ogni campo ha un intervallo compreso tra 0 e 65535. I membri di PatchFamily vengono ordinati e applicati al prodotto di destinazione nell'ordine di aumento dei valori sequence. Ad esempio, i sei valori seguenti aumentano: 1, 1.1, 1.2, 2.01, 2.01.1, 2.01.1.1.

attributi

La presenza dell'attributo msidbPatchSequenceSupersedeEarlier in una riga indica che la piccolo aggiornamento sostituisce gli aggiornamenti forniti da tutte le patch con valori Di sequenza inferiori nella stessa PatchFamily. Questa patch contiene tutte le correzioni fornite dalle patch precedenti nella PatchFamily specificata. Questo attributo non significa che questa patch sostituisce le patch precedenti in tutti i casi perché le patch precedenti possono appartenere a più famiglie di patch.

Un piccolo aggiornamento patch non può sostituire un di aggiornamento secondario o patch di aggiornamento principale in qualsiasi circostanza, anche se è impostata la msidbPatchSequenceSupersedeEarlier.

Nome Valore Significato
0x00 Indica un valore di sequenziazione semplice.
msidbPatchSequenceSupersedeEarlier 0x01 Indica una patch che sostituisce le patch precedenti in questa famiglia.

 

Convalida

ICE03
ICE06

non supportato in Windows Installer 2.0 e versioni precedenti