Gewusst wie: Entfernen einer Assembly aus dem globalen AssemblycacheHow to: Remove an Assembly from the Global Assembly Cache

Es gibt zwei Möglichkeiten, eine Assembly aus dem globalen Assemblycache (GAC) zu entfernen:There are two ways to remove an assembly from the global assembly cache (GAC):

  • Durch Verwenden des Global Assembly Cache-Tools (Gacutil.exe).By using the Global Assembly Cache tool (Gacutil.exe). Diese Option können Sie zum Deinstallieren von Assemblys verwenden, die Sie beim Entwickeln und Testen im GAC platziert haben.You can use this option to uninstall assemblies that you've placed in the GAC during development and testing.

  • Mithilfe von Windows Installer.By using Windows Installer. Diese Option für das Deinstallieren von Assemblys sollten Sie für Produktionssysteme und dann verwenden, wenn Sie Installationspakete testen.You should use this option to uninstall assemblies when testing installation packages and for production systems.

Entfernen einer Assembly mit "Gacutil.exe"Removing an assembly with Gacutil.exe

Geben Sie an der Eingabeaufforderung folgenden Befehl ein:At the command prompt, type the following command:

gacutil –u <assemblyname>gacutil –u <assembly name>

In diesem Befehl ist Assemblyname der Name der Assembly, die aus dem globalen Assemblycache entfernt werden soll.In this command, assembly name is the name of the assembly to remove from the global assembly cache.

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.You should not use Gacutil.exe to remove assemblies on production systems because of the possibility that the assembly may still be required by some application. Stattdessen sollten Sie den Windows Installer verwenden, der einen Verweiszähler für jede Assembly verwaltet, die er im GAC installiert.Instead, you should use the Windows Installer, which maintains a reference count for each assembly it installs in the GAC.

Im folgenden Beispiel wird eine Assembly mit dem Namen hello.dll aus dem globalen Assemblycache entfernt:The following example removes an assembly named hello.dll from the global assembly cache:

gacutil -u hello

Entfernen einer Assembly mit Windows InstallerRemoving an assembly with Windows Installer

Wählen Sie in der Systemsteuerung in Programme und Funktionen die Anwendung aus, die Sie deinstallieren möchten.From the Programs and Features app in Control Panel, select the app that you want to uninstall. Wenn das Installationspaket Assemblys im GAC platziert hat, werden diese von Windows Installer entfernt, sofern sie nicht von einer anderen Anwendung verwendet werden.If the installation package placed assemblies in the GAC, Windows Installer will remove them if they are not used by another application.

Hinweis

Windows Installer verwaltet einen Verweiszähler für Assemblys, die im GAC installiert sind.Windows Installer maintains a reference count for assemblies installed in the GAC. 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.An assembly is removed from the GAC only when its reference count reaches zero, which indicates that it is not used by any application installed by a Windows Installer package.

Siehe auchSee also