Freigeben über


Rollback von Assemblys im globalen Assemblycache

Ein zweistufiger Prozess erweitert das Transaktionsmodell von Windows Installer auf Produkte, die Common Language Runtime-Assemblys enthalten. Dies ermöglicht das Rollback nicht erfolgreicher Installationen und Entfernungen von Assemblys.

Im ersten Schritt verwendet Windows Installer Microsoft .NET Framework, um eine Schnittstelle für jede Assembly zu erstellen. Windows Installer verwendet so viele Schnittstellen, wie es zu installierende Assemblys gibt. Das Committen einer Assembly mithilfe einer dieser Schnittstellen bedeutet nur, dass die Assembly bereit ist, jede vorhandene Assembly mit demselben Namen zu ersetzen. Sie ersetzt sie noch nicht. Wenn der Benutzer die Installation abbricht oder ein schwerwiegender Installationsfehler auftritt, kann Windows Installer die Assembly trotzdem in den vorherigen Zustand zurücksetzen, indem diese Schnittstellen freigegeben werden.

Nachdem Windows Installer die Installation aller Assemblys und Windows Installer-Komponenten abgeschlossen hat, leitet der Installer möglicherweise den zweiten Schritt der Installation ein. Im zweiten Schritt wird eine separate Funktion verwendet, um den endgültigen Commit aller neuen Common Language Runtime-Assemblys durchzuführen. Dadurch werden alle vorhandenen Assemblys mit demselben Namen ersetzt.