Applicazione di patch
Un'applicazione installata tramite Microsoft Windows Installer può essere aggiornata reinstallando un pacchetto di installazione aggiornato (file con estensione msi) o applicando una patch di Windows Installer (un file MSP) all'applicazione.
Una patch di Windows Installer (file msp) è un pacchetto autonomo che contiene gli aggiornamenti dell'applicazione e descrive quali versioni dell'applicazione possono ricevere la patch. Le patch contengono almeno due trasformazioni di database e possono contenere file patch archiviati nel flusso di file cab del pacchetto patch. Per altre informazioni sulle parti di un pacchetto patch di Windows Installer, vedere Pacchetti patch.
La manutenzione delle applicazioni tramite la distribuzione di una patch di Windows Installer, anziché un pacchetto di installazione completo per il prodotto aggiornato può avere vantaggi. Una patch può contenere un intero file o solo i bit di file necessari per aggiornare parte del file. Ciò consente all'utente di scaricare una patch di aggiornamento molto più piccola del pacchetto di installazione per l'intero prodotto. Un aggiornamento che usa una patch può mantenere una personalizzazione utente dell'applicazione tramite l'aggiornamento.
**Windows Installer 4.5 e versioni successive: **
A partire da Windows Installer 4.5, gli sviluppatori possono contrassegnare i componenti in una patch con il valore msidbComponentAttributesUninstallOnSupersedence nella tabella Component. Se viene installata una patch successiva, contrassegnata con il valore msidbPatchSequenceSupersedeEarlier nella tabella MsiPatchSequence per sostituire la prima patch, Windows Installer 4.5 e versioni successive può annullare la registrazione e disinstallare i componenti contrassegnati con msidbComponentAttributesUninstallOnSupersedence per evitare di lasciare i componenti inutilizzati nel computer. Se il componente non è contrassegnato con questo bit, l'installazione della patch di sostituzione può lasciare un componente inutilizzato nel computer. L'impostazione della proprietà MSIUNINSTALLSUPER edizione Standard DEDCOMPONENTS ha lo stesso effetto dell'impostazione di questo bit per tutti i componenti.
**Windows Installer 3.0 e versioni successive: **
Gli sviluppatori che usano Windows Installer 3.0 e creano pacchetti patch con la tabella MsiPatchSequence possono creare pacchetti patch che eseguono le operazioni seguenti:
- Usare la baseline del prodotto memorizzata nella cache dal programma di installazione per gestire più facilmente le applicazioni con patch differenziali più piccole. Per altre informazioni sull'uso della baseline del prodotto, vedere Riduzione delle dimensioni delle patch.
- Ignorare le azioni associate a tabelle specifiche non modificate dalla patch. Ciò può ridurre significativamente il tempo necessario per installare la patch. Per altre informazioni sulle tabelle che è possibile ignorare, vedere Ottimizzazione patch.
- Creare e installare patch che possono essere disinstallate manualmente e in qualsiasi ordine, senza dover disinstallare e reinstallare l'intera applicazione e altre patch. Per altre informazioni sulla disinstallazione delle patch, vedere Rimozione di patch.
- Applicare patch in un ordine costante indipendentemente dall'ordine in cui vengono fornite le patch al sistema. Per altre informazioni su come Windows Installer determina la sequenza usata per applicare patch, vedi Sequenziazione di patch.
- Applicare patch a un'applicazione installata in un contesto gestito dall'utente. Per altre informazioni, vedere Applicazione di patch alle applicazioni gestite per utente.
**Windows Installer 2.0: **
La tabella MsiPatchSequence non è supportata. A partire da Windows Installer 3.0, i pacchetti patch possono contenere informazioni che descrivono la sequenza di patch per la patch rispetto ad altri aggiornamenti e informazioni descrittive aggiuntive.
Il metodo consigliato per la creazione di un pacchetto patch consiste nell'usare strumenti di creazione di patch come Msimsp.exe e Patchwiz.dll. Gli sviluppatori possono generare un file di creazione di patch come descritto nella sezione Creazione di un pacchetto patch. La creazione di una piccola patch di aggiornamento è descritta nella sezione: Un piccolo esempio di applicazione di patch di aggiornamento.
Microsoft Windows Installer accetta un URL (Uniform Resource Locator) come origine valida per una patch. Per altre informazioni su come installare una patch che si trova in un server Web, vedere Download e installazione di una patch da Internet.
Una singola patch di Windows Installer (file msp) può essere applicata al pacchetto di installazione quando si installa un'applicazione per la prima volta. Per altre informazioni, vedere Applicazione di patch alle installazioni iniziali.
Non è possibile eliminare tutte le circostanze in cui l'applicazione di una patch potrebbe richiedere l'accesso all'origine dell'installazione originale. Tuttavia, per ridurre al minimo la possibilità che la patch richieda l'accesso all'origine originale, attenersi ai punti elencati nella sezione seguente: Impedire a una patch di richiedere l'accesso all'origine dell'installazione originale.
Per ridurre al minimo la possibilità che la patch non venga interrotta da una trasformazione di personalizzazione successiva, in genere la patch viene installata per prima, seguita dalla personalizzazione. L'installazione delle trasformazioni di personalizzazione può prima interrompere la personalizzazione e quindi la patch. Per altre informazioni sull'applicazione di patch alle applicazioni personalizzate, vedere Applicazione di patch alle applicazioni personalizzate.