Gacutil.exe (Global Assembly Cache-Tool)Gacutil.exe (Global Assembly Cache Tool)

Das Global Assembly Cache-Tool ermöglicht das Anzeigen und Bearbeiten vom Inhalt des globalen Assemblycaches und des Downloadcaches.The Global Assembly Cache tool allows you to view and manipulate the contents of the global assembly cache and download cache.

Dieses Tool wird automatisch mit Visual Studio installiert.This tool is automatically installed with Visual Studio. Zum Ausführen des Tools verwenden Sie die Developer-Eingabeaufforderung (oder die Visual Studio-Eingabeaufforderung in Windows 7).To run the tool, use the Developer Command Prompt (or the Visual Studio Command Prompt in Windows 7). Weitere Informationen finden Sie unter Eingabeaufforderungen.For more information, see Command Prompts.

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

SyntaxSyntax

gacutil [options] [assemblyName | assemblyPath | assemblyListFile]  

ParameterParameters

ArgumentArgument descriptionDescription
assemblyNameassemblyName Der Name einer Assembly.The name of an assembly. Sie können entweder einen teilweise angegebenen Assemblynamen, z. B. myAssembly, oder einen vollständig angegebenen Assemblynamen, z B. myAssembly, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0038abc9deabfle5, verwenden.You can supply either a partially specified assembly name such as myAssembly or a fully specified assembly name such as myAssembly, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0038abc9deabfle5.
assemblyPathassemblyPath Der Name einer Datei, die ein Assemblymanifest enthält.The name of a file that contains an assembly manifest.
assemblyListFileassemblyListFile Der Pfad zu einer ANSI-Textdatei, in der zu installierende oder zu deinstallierende Assemblys aufgeführt sind.The path to an ANSI text file that lists assemblies to install or uninstall. Wenn Sie zum Installieren von Assemblys eine Textdatei verwenden möchten, geben Sie den Pfad zu den einzelnen Assemblys in der Datei jeweils in eigenen Zeilen an.To use a text file to install assemblies, specify the path to each assembly on a separate line in the file. Das Tool interpretiert relative Pfade als relativ zum Speicherort von assemblyListFile.The tool interprets relative paths, relative to the location of the assemblyListFile. Wenn Sie zum Deinstallieren von Assemblys eine Textdatei verwenden möchten, geben Sie den vollqualifizierten Namen der einzelnen Assemblys jeweils in eigenen Zeilen in der Datei an.To use a text file to uninstall assemblies, specify the fully qualified assembly name for each assembly on a separate line in the file. Weitere Informationen hierzu finden Sie in den Beispielen zum Inhalt von assemblyListFile weiter unten in diesem Thema.See the assemblyListFile contents examples later in this topic.
OptionOption descriptionDescription
/cdl/cdl Löscht den Inhalt des Downloadcaches.Deletes the contents of the download cache.
/f/f Geben Sie zum Erzwingen der Neuinstallation einer Assembly diese Option mit der /i-Option oder der /il-Option an.Specify this option with the /i or /il options to force an assembly to reinstall. Wenn im globalen Assemblycache bereits eine Assembly mit demselben Namen vorhanden ist, wird diese vom Tool überschrieben.If an assembly with the same name already exists in the global assembly cache, the tool overwrites it.
-h[elp]/h[elp] Zeigt Befehlssyntax und Optionen für das Tool an.Displays command syntax and options for the tool.
/i assemblyPath/i assemblyPath Installiert eine Assembly in den globalen Assemblycache.Installs an assembly into the global assembly cache.
/if assemblyPath/if assemblyPath Installiert eine Assembly in den globalen Assemblycache.Installs an assembly into the global assembly cache. Wenn im globalen Assemblycache bereits eine Assembly mit demselben Namen vorhanden ist, wird diese vom Tool überschrieben.If an assembly with the same name already exists in the global assembly cache, the tool overwrites it.

Die Angabe dieser Option entspricht der kombinierten Angabe der /i-Option und der /f-Option.Specifying this option is equivalent to specifying the /i and /f options together.
/il assemblyListFile/il assemblyListFile Installiert eine oder mehrere in assemblyListFile angegebene Assemblys im globalen Assemblycache.Installs one or more assemblies specified in assemblyListFile into the global assembly cache.
/ir assemblyPath/ir assemblyPath

Schemascheme

IDid

Beschreibungdescription
Installiert eine Assembly im globalen Assemblycache und fügt einen Verweis zum Zählen der Assembly hinzu.Installs an assembly into the global assembly cache and adds a reference to count the assembly. Die Parameter assemblyPath, scheme, id und description müssen mit dieser Option angegeben werden.You must specify the assemblyPath, scheme, id,and description parameters with this option. Eine Beschreibung der gültigen Werte, die für diese Parameter angegeben werden können, finden Sie unter der /r-Option.For a description of the valid values you can specify for these parameters, see the /r option.

Die Angabe dieser Option entspricht der kombinierten Angabe der /i-Option und der /r-Option.Specifying this option is equivalent to specifying the /i and /r options together.
/l [assemblyName]/l [assemblyName] Listet den Inhalt des globalen Assemblycaches auf.Lists the contents of the global assembly cache. Wenn Sie den assemblyName-Parameter angeben, werden vom Tool nur die mit diesem Namen übereinstimmenden Assemblys aufgelistet.If you specify the assemblyName parameter, the tool lists only the assemblies matching that name.
/ldl/ldl Listet den Cacheinhalt der heruntergeladenen Dateien auf.Lists the contents of the downloaded files cache.
/lr [assemblyName]/lr [assemblyName] Listet alle Assemblys und die entsprechenden Verweiszähler auf.Lists all assemblies and their corresponding reference counts. Bei Angabe des assemblyName-Parameters werden vom Tool nur die mit diesem Namen übereinstimmenden Assemblys sowie die entsprechenden Verweiszähler aufgelistet.If you specify the assemblyName parameter, the tool lists only the assemblies matching that name and their corresponding reference counts.
/nologo/nologo Unterdrückt die Anzeige des Startbanners von Microsoft.Suppresses the Microsoft startup banner display.
/r [assemblyName | assemblyPath]/r [assemblyName | assemblyPath]

Schemascheme

IDid

Beschreibungdescription
Gibt einen zurückverfolgten Verweis auf Assemblys an, die installiert oder deinstalliert werden sollen.Specifies a traced reference to an assembly or assemblies to install or uninstall. Geben Sie diese Option mit den Optionen /i, /il, /u oder /ul an.Specify this option with the /i, /il, /u, or /ul options.

Um eine Assembly zu installieren, müssen Sie die Parameter assemblyPath, scheme, id und description mit dieser Option angeben.To install an assembly, specify the assemblyPath, scheme, id,and description parameters with this option. Geben Sie zum Deinstallieren einer Assembly die Parameter assemblyName, scheme, id und description an.To uninstall an assembly, specify the assemblyName, scheme, id,and description parameters.

Um einen Verweis auf eine Assembly zu entfernen, müssen Sie dieselben Parameter scheme, id und description angeben, die beim Installieren der Assembly mit der /i-Option und der /r-Option (bzw. der /ir-Option) angegeben wurden.To remove a reference to an assembly, you must specify the same scheme, id, and description parameters that were specified with the /i and /r (or /ir) options when the assembly was installed. Bei der Deinstallation einer Assembly wird die Assembly vom Tool auch aus dem globalen Assemblycache entfernt, sofern es sich um den letzten zu entfernenden Verweis handelt und der Windows Installer keine ausstehenden Verweise auf die Assembly findet.If you are uninstalling an assembly, the tool also removes the assembly from the global assembly cache if it is the last reference to remove and if Windows Installer has no outstanding references to the assembly.

Mit dem scheme-Parameter wird der Typ des Installationsschemas angegeben.The scheme parameter specifies the type of installation scheme. Sie können einen der folgenden Werte angeben:You can specify one of the following values:

– UNINSTALL_KEY: Geben Sie diesen Wert an, wenn das Installationsprogramm die Anwendung in Microsoft Windows unter „Software“ hinzufügt.- UNINSTALL_KEY: Specify this value if the installer adds the application to Add/Remove Programs in Microsoft Windows. Anwendungen werden unter "Software" automatisch hinzugefügt, indem unter HKLM\Software\Microsoft\Windows\CurrentVersion ein Registrierungsschlüssel hinzugefügt wird.Applications add themselves to Add/Remove Programs by adding a registry key to HKLM\Software\Microsoft\Windows\CurrentVersion.
– FILEPATH: Geben Sie diesen Wert an, wenn die Anwendung durch das Installationsprogramm nicht unter „Software“ hinzugefügt wird.- FILEPATH: Specify this value if the installer does not add the application to Add/Remove Programs.
– OPAQUE: Geben Sie diesen Wert an, wenn bei der Installation kein Registrierungsschlüssel oder Dateipfad angegeben werden kann.- OPAQUE: Specify this value if supplying a registry key or file path does not apply to your installation scenario. Mithilfe dieses Werts können Sie benutzerdefinierte Informationen für den id-Parameter angeben.This value allows you to specify custom information for the id parameter.

Der für den id-Parameter anzugebende Wert hängt von dem für den scheme-Parameter angegeben Wert ab:The value to specify for the id parameter depends on the value specified for the scheme parameter:

Wenn Sie für den scheme-Parameter UNINSTALL_KEY angeben, geben Sie den im Registrierungsschlüssel HKLM\Software\Microsoft\Windows\CurrentVersion festgelegten Namen der Anwendung an.- If you specify UNINSTALL_KEY for the scheme parameter, specify the name of the application set in the HKLM\Software\Microsoft\Windows\CurrentVersion registry key. Lautet der Registrierungsschlüssel z.B. HKLM\Software\Microsoft\Windows\CurrentVersion\MyApp, geben Sie als id-Parameter „MyApp“ an.For example, if the registry key is HKLM\Software\Microsoft\Windows\CurrentVersion\MyApp, specify MyApp for the id parameter.
– Wenn Sie als scheme-Parameter „FILEPATH“ angeben, geben Sie den vollständigen Pfad der ausführbaren Datei an, mit der die Assembly als id-Parameter installiert wird.- If you specify FILEPATH for the scheme parameter, specify the full path to the executable file that installs the assembly as the id parameter.
Wenn Sie als scheme-Parameter „OPAQUE“ angeben, können Sie beliebige Daten als id-Parameter angeben.- If you specify OPAQUE for the scheme parameter, you can supply any piece of data as the id parameter. Die angegebenen Daten müssen in Anführungszeichen ("") eingeschlossen sein.The data you specify must be enclosed in quotation marks ("").

Mithilfe des description-Parameters können Sie einen beschreibenden Text für die zu installierende Anwendung eingeben.The description parameter allows you to specify descriptive text about the application to install. Diese Informationen werden beim Auflisten von Verweisen angezeigt.This information is displayed when references are enumerated.
/silent/silent Die Anzeige aller Datenausgaben werden unterdrückt.Suppresses the display of all output.
/u assemblyName/u assemblyName Deinstalliert eine Assembly aus dem globalen Assemblycache.Uninstalls an assembly from the global assembly cache.
/uf assemblyName/uf assemblyName Erzwingt die Deinstallation einer angegebenen Assembly durch Entfernen aller Verweise auf die Assembly.Forces a specified assembly to uninstall by removing all references to the assembly.

Die Angabe dieser Option entspricht der kombinierten Angabe der /u-Option und der /f-Option.Specifying this option is equivalent to specifying the /u and /f options together. Hinweis: Mit dieser Option können Sie keine Assembly entfernen, die mit dem Microsoft Windows Installer installiert wurde.Note: You cannot use this option to remove an assembly that was installed using Microsoft Windows Installer. Bei einem Versuch, diesen Vorgang auszuführen, wird vom Tool eine Fehlermeldung angezeigt.If you attempt this operation, the tool displays an error message.
/ul assemblyListFile/ul assemblyListFile Mindestens eine in assemblyListFile angegebene Assembly wird aus dem globalen Assemblycache deinstalliert.Uninstalls one or more assemblies specified in assemblyListFile from the global assembly cache.
/u[ngen] assemblyName/u[ngen] assemblyName Eine bestimmte Assembly wird aus dem globalen Assemblycache deinstalliert.Uninstalls a specified assembly from the global assembly cache. Wenn die angegebene Assembly über einen Zähler für vorhandene Verweise verfügt, wird der Verweiszähler vom Tool angezeigt, und die Assembly wird nicht aus dem globalen Assemblycache entfernt.If the specified assembly has existing reference counts, the tool displays the reference counts and does not remove the assembly from the global assembly cache. Hinweis: In der .NET Framework-Version 2.0 wird /ungen nicht unterstützt.Note: In the .NET Framework version 2.0, /ungen is not supported. Verwenden Sie stattdessen den uninstall-Befehl von Ngen.exe (Native Image Generator).Instead, use the uninstall command of the Ngen.exe (Native Image Generator).

In .NET Framework, Version 1.0 und 1.1 wird bei Angabe von /ungen die Assembly von „Gacutil.exe“ aus dem nativen Imagecache entfernt.In the .NET Framework versions 1.0 and 1.1, specifying /ungen causes Gacutil.exe to remove the assembly from the native image cache. In diesem Cache werden die nativen Images für Assemblys gespeichert, die mit dem Ngen.exe (Native Image Generator) erstellt wurden.This cache stores the native images for assemblies that have been created using the Ngen.exe (Native Image Generator).
/ur assemblyName/ur assemblyName

Schemascheme

IDid

Beschreibungdescription
Deinstalliert einen Verweis auf eine angegebene Assembly aus dem globalen Assemblycache.Uninstalls a reference to a specified assembly from the global assembly cache. Um einen Verweis auf eine Assembly zu entfernen, müssen Sie dieselben Parameter scheme, id und description angeben, die beim Installieren der Assembly mit der /i-Option und der /r-Option (bzw. der /ir-Option) angegeben wurden.To remove a reference to an assembly, you must specify the same scheme, id, and description parameters that were specified with the /i and /r (or /ir) options when the assembly was installed. Eine Beschreibung der gültigen Werte, die für diese Parameter angegeben werden können, finden Sie unter der /r-Option.For a description of the valid values you can specify for these parameters, see the /r option.

Die Angabe dieser Option entspricht der kombinierten Angabe der /u-Option und der /r-Option.Specifying this option is equivalent to specifying the /u and /r options together.
/?/? Zeigt Befehlssyntax und Optionen für das Tool an.Displays command syntax and options for the tool.

HinweiseRemarks

Hinweis

Sie müssen zum Verwenden von "Gacutil.exe" über Administratorrechte verfügen.You must have administrator privileges to use Gacutil.exe.

"Gacutil.exe" ermöglicht Ihnen insbesondere das Installieren von Assemblys im Cache, das Entfernen von Assemblys aus dem Cache sowie das Auflisten des Cacheinhalts.Specifically, Gacutil.exe allows you to install assemblies into the cache, remove them from the cache, and list the contents of the cache.

"Gacutil.exe" bietet Optionen zur Unterstützung einer Verweiszählung, die dem von Windows Installer unterstützten Verweiszählungsschema ähnelt.Gacutil.exe provides options that support reference counting similar to the reference counting scheme supported by Windows Installer. Mit "Gacutil.exe" können Sie zwei Anwendungen installieren, die dieselbe Assembly installieren. Dabei wird die Anzahl von Verweisen auf die Assembly vom Tool verfolgt.You can use Gacutil.exe to install two applications that install the same assembly; the tool keeps track of the number of references to the assembly. Daher verbleibt die Assembly auf dem Computer, bis beide Anwendungen deinstalliert wurden.As a result, the assembly will remain on the computer until both applications are uninstalled. Wenn Sie "Gacutil.exe" für die eigentliche Produktinstallation einsetzen, nutzen Sie die Optionen, mit denen die Verweiszählung unterstützt wird.If you are using Gacutil.exe for actual product installations, use the options that support reference counting. Bei gleichzeitiger Verwendung der /i-Option und der /r-Option können Sie eine Assembly installieren und einen Verweis für die Zählung hinzufügen.Use the /i and /r options together to install an assembly and add a reference to count it. Bei gleichzeitiger Verwendung der /u-Option und der /r-Option können Sie einen Verweiszähler für eine Assembly entfernen.Use the /u and /r options together to remove a reference count for an assembly. Beachten Sie, dass weder die /i-Option noch die /u-Option allein die Verweiszählung unterstützt.Be aware that using the /i and /u options alone does not support reference counting. Diese Optionen sind für die Verwendung während der Produktentwicklung geeignet, jedoch nicht für die eigentliche Produktinstallation.These options are appropriate for use during product development but not for actual product installations.

Mit der /il-Option oder der /ul-Option können Sie eine Liste von Assemblys installieren bzw. deinstallieren, die in einer ANSI-Textdatei gespeichert ist.Use the /il or /ul options to install or uninstall a list of assemblies stored in an ANSI text file. Der Inhalt der Textdatei muss korrekt formatiert sein.The contents of the text file must be formatted correctly. Wenn Sie zum Installieren von Assemblys eine Textdatei verwenden möchten, geben Sie den Pfad zu den einzelnen Assemblys in der Datei jeweils in eigenen Zeilen an.To use a text file to install assemblies, specify the path to each assembly on a separate line in the file. Im folgenden Beispiel wird der Inhalt einer Datei veranschaulicht, in der zu installierende Assemblys enthalten sind.The following example demonstrates the contents of a file containing assemblies to install.

myAssembly1.dll  
myAssembly2.dll  
myAssembly3.dll  

Wenn Sie zum Deinstallieren von Assemblys eine Textdatei verwenden möchten, geben Sie den vollqualifizierten Namen der einzelnen Assemblys jeweils in eigenen Zeilen in der Datei an.To use a text file to uninstall assemblies, specify the fully qualified assembly name for each assembly on a separate line in the file. Im folgenden Beispiel wird der Inhalt einer Datei veranschaulicht, in der zu deinstallierende Assemblys enthalten sind.The following example demonstrates the contents of a file containing assemblies to uninstall.

myAssembly1,Version=1.1.0.0,Culture=en,PublicKeyToken=874e23ab874e23ab  
myAssembly2,Version=1.1.0.0,Culture=en,PublicKeyToken=874e23ab874e23ab  
myAssembly3,Version=1.1.0.0,Culture=en,PublicKeyToken=874e23ab874e23ab  

BeispieleExamples

Mit dem folgenden Befehl wird die Assembly mydll.dll im globalen Assemblycache installiert.The following command installs the assembly mydll.dll into the global assembly cache.

gacutil /i mydll.dll  

Mit dem folgenden Befehl wird die Assembly hello aus dem globalen Assemblycache entfernt, sofern für die Assembly keine Verweiszählung vorhanden ist.The following command removes the assembly hello from the global assembly cache as long as no reference counts exist for the assembly.

gacutil /u hello  

Mit dem vorherigen Befehl können mehrere Assemblys aus dem Assemblycache entfernt werden, da der Assemblyname nicht vollständig angegeben ist.Note that the previous command might remove more than one assembly from the assembly cache because the assembly name is not fully specified. Wenn z. B. Version 1.0.0.0 und Version 3.2.2.1 von hello im Cache installiert sind, werden mit dem Befehl gacutil /u hello beide Assemblys entfernt.For example, if both version 1.0.0.0 and 3.2.2.1 of hello are installed in the cache, the command gacutil /u hello removes both of the assemblies.

Im folgenden Beispiel wird veranschaulicht, wie Sie das Entfernen mehrerer Assemblys vermeiden.Use the following example to avoid removing more than one assembly. Mit diesem Befehl wird lediglich die Assembly hello entfernt, die der vollständig angegebenen Versionsnummer, der Kultur und dem öffentlichen Schlüssel entspricht.This command removes only the hello assembly that matches the fully specified version number, culture, and public key.

gacutil /u hello, Version=1.0.0.1, Culture="de",PublicKeyToken=45e343aae32233ca  

Mit dem folgenden Befehl werden die in der Datei assemblyList.txt angegebenen Assemblys im globalen Assemblycache installiert.The following command installs the assemblies specified in the file assemblyList.txt into the global assembly cache.

gacutil /il assemblyList.txt

Mit dem folgenden Befehl werden die in der Datei assemblyList.txt angegebenen Assemblys aus dem globalen Assemblycache entfernt.The following command removes the assemblies specified in the file assemblyList.txt from the global assembly cache.

gacutil /ul assemblyList.txt

Mit dem folgenden Befehl wird myDll.dll im globalen Assemblycache installiert, und es wird ein Verweis für die Zählung hinzugefügt.The following command installs myDll.dll into the global assembly cache and adds a reference to count it. Die Assembly myDll.dll wird von der Anwendung MyApp verwendet.The assembly myDll.dll is used by the application MyApp. Mit dem UNINSTALL_KEY MyApp -Parameter wird der Registrierungsschlüssel angegeben, mit dem MyApp in Windows der Liste unter "Software" hinzufügt wird.The UNINSTALL_KEY MyApp parameter specifies the registry key that adds MyApp to Add/Remove Programs in Windows. Der description-Parameter wird als My Application Description angegeben.The description parameter is specified as My Application Description.

gacutil /i /r myDll.dll UNINSTALL_KEY MyApp "My Application Description"  

Mit dem folgenden Befehl wird myDll.dll im globalen Assemblycache installiert, und es wird ein Verweis für die Zählung hinzugefügt.The following command installs myDll.dll into the global assembly cache and adds a reference to count it. Der scheme-Parameter FILEPATH und der id-Parameter c:\applications\myApp\myApp.exe geben den Pfad der Anwendung an, von der die myDll.dll. installiert wird. Der description-Parameter wird als MyApp angegeben.The scheme parameter, FILEPATH, and the id parameter, c:\applications\myApp\myApp.exe, specify the path to the application that is installing myDll.dll. The description parameter is specified as MyApp.

gacutil /i /r myDll.dll FILEPATH c:\applications\myApp\myApp.exe MyApp

Mit dem folgenden Befehl wird myDll.dll im globalen Assemblycache installiert, und es wird ein Verweis für die Zählung hinzugefügt.The following command installs myDll.dll into the global assembly cache and adds a reference to count it. Der scheme-Parameter OPAQUE ermöglicht die Anpassung des id-Parameters und des description-Parameters.The scheme parameter, OPAQUE, allows you to customize the id and description parameters.

gacutil /i /r mydll.dll OPAQUE "Insert custom application details here" "Insert Custom description information here"  

Mit dem folgenden Befehl wird der Verweis auf myDll.dll von der Anwendung myApp entfernt.The following command removes the reference to myDll.dll by the application myApp. Wenn es sich hierbei um den letzten Verweis auf die Assembly handelt, wird auch die Assembly aus dem Assemblycache entfernt.If this is the last reference to the assembly, it will also remove the assembly from the global assembly cache.

gacutil /u /r myDll.dll FILEPATH c:\applications\myApp\myApp.exe MyApp

Der folgende Befehl listet den Inhalt des globalen Assemblycaches auf.The following command lists the contents of the global assembly cache.

gacutil /l  

Siehe auchSee Also

ExtrasTools
Globaler AssemblycacheGlobal Assembly Cache
Regasm.exe (Assembly Registration-Tool)Regasm.exe (Assembly Registration Tool)
EingabeaufforderungenCommand Prompts