Rollback degli assembly nella Global Assembly Cache
Un processo in due passaggi estende il modello di transazione di Windows Installer ai prodotti contenenti assembly common language runtime. Ciò consente al programma di installazione di eseguire il rollback di installazioni e rimozione di assembly non riusciti.
Durante il primo passaggio, Windows Installer usa Microsoft .NET Framework per creare un'interfaccia per ogni assembly. Windows Installer usa quante interfacce sono presenti assembly installati. Il commit di un assembly usando una di queste interfacce significa solo che l'assembly è pronto per sostituire qualsiasi assembly esistente con lo stesso nome, non lo sostituisce ancora. Se l'utente annulla l'installazione o se si verifica un errore di installazione irreversibile, Windows Installer può comunque eseguire il rollback dell'assembly nello stato precedente rilasciando queste interfacce.
Al termine dell'installazione di tutti gli assembly e i componenti di Windows Installer, il programma di installazione può avviare il secondo passaggio dell'installazione. Il secondo passaggio usa una funzione separata per eseguire il commit finale di tutti i nuovi assembly common language runtime. In questo modo tutti gli assembly esistenti vengono sostituiti con lo stesso nome.