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. Auf diese Weise kann das Installationsprogramm erfolglose Installationen und Entfernungen von Assemblys zurücksetzen.

Im ersten Schritt verwendet Windows Installer microsoft .NET Framework, um eine Schnittstelle für jede Assembly zu erstellen. Der Windows Installer verwendet so viele Schnittstellen, wie Assemblys installiert werden. Das Commit einer Assembly mit einer dieser Schnittstellen bedeutet nur, dass die Assembly bereit ist, vorhandene Assemblys mit demselben Namen zu ersetzen, und sie wird noch nicht ersetzt. Wenn der Benutzer die Installation abbricht oder ein schwerwiegender Installationsfehler auftritt, kann der Windows Installer die Assembly weiterhin auf den vorherigen Zustand zurücksetzen, indem diese Schnittstellen freigegeben werden.

Nachdem der Windows Installer die Installation aller Assemblys und Windows Installer-Komponenten abgeschlossen hat, kann das Installationsprogramm den zweiten Schritt der Installation initiieren. Im zweiten Schritt wird eine separate Funktion verwendet, um den endgültigen Commit aller neuen Common Language Runtime-Assemblys auszuführen. Dadurch werden alle vorhandenen Assemblys durch denselben Namen ersetzt.