Vorgehensweise: Entfernen einer Assembly aus dem globalen Assemblycache
Hinweis
Dieser Artikel gilt für das .NET Framework. Er gilt nicht für neuere Implementierungen von .NET, einschließlich .NET 6 und höherer Versionen.
Es gibt zwei Möglichkeiten, eine Assembly aus dem globalen Assemblycache (GAC) zu entfernen:
Durch Verwenden des Global Assembly Cache-Tools (Gacutil.exe). Diese Option können Sie zum Deinstallieren von Assemblys verwenden, die Sie beim Entwickeln und Testen im GAC platziert haben.
Mithilfe von Windows Installer. Diese Option für das Deinstallieren von Assemblys sollten Sie für Produktionssysteme und dann verwenden, wenn Sie Installationspakete testen.
Entfernen einer Assembly mit "Gacutil.exe"
Geben Sie an der Eingabeaufforderung folgenden Befehl ein:
gacutil –u<assemblyname>
In diesem Befehl ist Assemblyname der Name der Assembly, die aus dem globalen Assemblycache entfernt werden soll.
Warnung
Sie sollten "Gacutil.exe" nicht verwenden, um Assemblys auf Produktionssystemen zu entfernen, denn es besteht die Möglichkeit, dass die Assembly für einige Anwendungen weiterhin erforderlich ist. Stattdessen sollten Sie den Windows Installer verwenden, der einen Verweiszähler für jede Assembly verwaltet, die er im GAC installiert.
Im folgenden Beispiel wird die Assembly hello.dll
aus dem globalen Assemblycache entfernt:
gacutil -u hello
Entfernen einer Assembly mit Windows Installer
Wählen Sie in der Systemsteuerung in Programme und Funktionen die Anwendung aus, die Sie deinstallieren möchten. Wenn das Installationspaket Assemblys im GAC platziert hat, werden diese von Windows Installer entfernt, sofern sie nicht von einer anderen Anwendung verwendet werden.
Hinweis
Windows Installer verwaltet einen Verweiszähler für Assemblys, die im GAC installiert sind. Eine Assembly wird nur dann aus dem GAC entfernt, wenn ihr Verweiszähler gleich null wird, wodurch angegeben ist, dass sie von keiner der Anwendungen verwendet wird, die über ein Windows Installer-Paket installiert wurden.