Global Assembly Cache-Tool (Gacutil.exe)
Aktualisiert: November 2007
Mithilfe des Global Assembly Cache-Tools können Sie den Inhalt des globalen Assemblycaches anzeigen lassen und bearbeiten sowie Cacheinhalt downloaden.
gacutil [options] [assemblyName | assemblyPath | assemblyListFile]
Parameter
Argument |
Beschreibung |
---|---|
assemblyName |
Der Name einer Assembly. Sie können entweder einen teilweise angegebenen Assemblynamen wie myAssembly oder einen vollständig angegebenen Assemblynamen wie myAssembly, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0038abc9deabfle5 bereitstellen. |
assemblyPath |
Der Name einer Datei, die ein Assemblymanifest enthält. |
assemblyListFile |
Der Pfad einer ANSI-Textdatei, in der zu installierende oder zu deinstallierende Assemblys aufgeführt sind. Wenn Sie zum Installieren von Assemblys eine Textdatei verwenden möchten, geben Sie den Pfad zu den einzelnen Assemblys in der Datei in jeweils eigenen Zeilen an. Das Tool interpretiert relative Pfade als relativ zum Speicherort von assemblyListFile. Wenn Sie zum Deinstallieren von Assemblys eine Textdatei verwenden möchten, geben Sie den vollqualifizierten Namen der einzelnen Assemblys in jeweils eigenen Zeilen in der Datei an. Weitere Informationen hierzu finden Sie in den Beispielen zum Inhalt von assemblyListFile weiter unten in diesem Thema. |
Option |
Beschreibung |
---|---|
/cdl |
Löscht den Inhalt des Downloadcaches. |
/f |
Geben Sie diese Option mit der /i-Option oder der /il-Option an, um die Neuinstallation einer Assembly zu erzwingen. Wenn im globalen Assemblycache bereits eine Assembly mit demselben Namen vorhanden ist, wird diese vom Tool überschrieben. |
/h[elp] |
Zeigt die Befehlssyntax und Optionen für das Tool an. |
/i assemblyPath |
Installiert eine Assembly im globalen Assemblycache. |
/if assemblyPath |
Installiert eine Assembly im globalen Assemblycache. Wenn im globalen Assemblycache bereits eine Assembly mit demselben Namen vorhanden ist, wird diese vom Tool überschrieben. Die Angabe dieser Option entspricht der kombinierten Angabe der /i-Option und der /f-Option. |
/il assemblyListFile |
Installiert eine oder mehrere in assemblyListFile angegebene Assemblys im globalen Assemblycache. |
/ir assemblyPath scheme id description |
Installiert eine Assembly im globalen Assemblycache und fügt einen Verweis zum Zählen der Assembly hinzu. Die Parameter assemblyPath, scheme, id,und description müssen mit dieser Option angegeben werden. Eine Beschreibung der gültigen Werte, die für diese Parameter angegeben werden können, finden Sie unter der /r-Option. Die Angabe dieser Option entspricht der kombinierten Angabe der /i-Option und der /r-Option. |
/l [assemblyName] |
Listet den Inhalt des globalen Assemblycaches auf. Wenn Sie den assemblyName-Parameter angeben, werden vom Tool nur die Assemblys aufgelistet, die mit diesem Namen übereinstimmen. |
/ldl |
Listet den Cacheinhalt der gedownloadeten Dateien auf. |
/lr [assemblyName] |
Listet alle Assemblys und die entsprechenden Verweiszähler auf. Wenn Sie den assemblyName-Parameter angeben, werden vom Tool nur die mit diesem Namen übereinstimmenden Assemblys sowie die entsprechenden Verweiszähler aufgelistet. |
/nologo |
Unterdrückt die Anzeige des Startbanners von Microsoft. |
/r [assemblyName | assemblyPath] scheme id description |
Gibt einen zurückverfolgten Verweis auf Assemblys an, die installiert oder deinstalliert werden sollen. Geben Sie diese Option mit den Optionen /i, /il, /u oder /ul an. Wenn Sie eine Assembly installieren möchten, müssen Sie die Parameter assemblyPath, scheme, id,und description mit dieser Option angeben. Wenn Sie eine Assembly deinstallieren möchten, müssen Sie die Parameter assemblyName, scheme, id,und description angeben. 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. Wenn Sie eine Assembly deinstallieren, entfernt das Tool auch die Assembly aus dem globalen Assemblycache, sofern es sich um den letzten zu entfernenden Verweis handelt und Windows Installer keine ausstehenden Verweise auf die Assembly enthält. Der scheme -Parameter gibt den Typ des Installationschemas an. Sie können einen der folgenden Werte angeben:
Der für den id-Parameter anzugebende Wert hängt von dem Wert ab, der für den scheme-Parameter angegeben wurde:
Mithilfe des description-Parameters können Sie einen beschreibenden Text für die zu installierende Anwendung eingeben. Diese Informationen werden beim Auflisten von Verweisen angezeigt. |
/silent |
Unterdrückt die Anzeige aller Datenausgaben. |
/u assemblyName |
Deinstalliert eine Assembly aus dem globalen Assemblycache |
/uf assemblyName |
Erzwingt die Deinstallation einer angegebenen Assembly durch Entfernen aller Verweise auf die Assembly. Die Angabe dieser Option entspricht der kombinierten Angabe der /u-Option und der /f-Option.
Hinweis:
Mit dieser Option können Sie keine Assembly entfernen, die mit Microsoft Windows Installer installiert wurde. Bei einem Versuch, diesen Vorgang auszuführen, wird vom Tool eine Fehlermeldung angezeigt.
|
/ulassemblyListFile |
Deinstalliert eine oder mehrere in assemblyListFile angegebene Assemblys aus dem globalen Assemblycache. |
/u[ngen] assemblyName |
Deinstalliert eine bestimmte Assembly aus dem globalen Assemblycache. 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.
Hinweis:
In .NET Framework, Version 2.0, wird /ungen nicht unterstützt. Verwenden Sie stattdessen den Befehl uninstall von Native Image Generator (Ngen.exe).
Wenn in .NET Framework, Version 1.0 und 1.1, /ungen angegeben wird, entfernt Gacutil.exe die Assembly aus dem Cache für systemeigene Abbilder. Dieser Cache speichert die systemeigenen Abbilder für Assemblys, die mit dem Native Image Generator (Ngen.exe) erstellt wurden. |
/ur assemblyName scheme id description |
Deinstalliert einen Verweis auf eine angegebene Assembly aus dem globalen Assemblycache. 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. Eine Beschreibung der gültigen Werte, die für diese Parameter angegeben werden können, finden Sie unter der /r-Option. Die Angabe dieser Option entspricht der kombinierten Angabe der /u-Option und der /r-Option. |
/? |
Zeigt die Befehlssyntax und Optionen für das Tool an. |
Hinweise
Dieses Tool bietet im Prinzip dieselben Funktionen zum Anzeigen des Caches wie die Windows Shell-Erweiterung (Shfusion.dll), kann jedoch besser für Buildskripts, Makefiles und Stapeldateien verwendet werden.
Tipp
Sie müssen über Administratorrechte verfügen, um Gacutil.exe verwenden zu können.
Gacutil.exe ermöglicht Ihnen insbesondere das Installieren von Assemblys im Cache, das Entfernen von Assemblys aus dem Cache sowie das Auflisten des Inhalts des Caches.
Gacutil.exe bietet Optionen zur Unterstützung einer Verweiszählung, die dem von Windows Installer unterstützten Verweiszählungsschema ähnelt. Mit Gacutil.exe können Sie zwei Anwendungen installieren, die dieselbe Assembly installieren, wobei das Tool die Anzahl der Verweise auf die Assembly verfolgt. Daher verbleibt die Assembly auf dem Computer, bis beide Anwendungen deinstalliert wurden. Wenn Sie Gacutil.exe für die eigentliche Produktinstallation einsetzen, verwenden Sie die Optionen, die die Verweiszählung unterstützen. Durch gleichzeitige Verwendung der /i-Option und der /r-Option können Sie eine Assembly installieren und einen Verweis für die Zählung hinzufügen. Durch gleichzeitige Verwendung der /u-Option und der /r-Option können Sie einen Verweiszähler für eine Assembly entfernen. Beachten Sie, dass weder die /i-Option noch die /u-Option allein die Verweiszählung unterstützt. Diese Optionen eignen sich für die Verwendung während der Produktentwicklung, jedoch nicht für die eigentliche Produktinstallation.
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. Der Inhalt der Textdatei muss richtig formatiert sein. Wenn Sie zum Installieren von Assemblys eine Textdatei verwenden möchten, geben Sie den Pfad zu den einzelnen Assemblys in der Datei in jeweils eigenen Zeilen an. Im folgenden Beispiel wird der Inhalt einer Datei veranschaulicht, die zu installierende Assemblys enthält.
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 in jeweils eigenen Zeilen in der Datei an. Im folgenden Beispiel wird der Inhalt einer Datei dargestellt, die zu deinstallierende Assemblys enthält.
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
Beispiele
Mit dem folgenden Befehl wird die Assembly mydll.dll im globalen Assemblycache installiert.
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.
gacutil /u hello
Mit dem obigen Befehl können mehrere Assemblys aus dem Assemblycache entfernt werden, da der Assemblyname nicht vollständig angegeben ist. Wenn z. B. Version 1.0.0.0 und Version 3.2.2.1 von hello im Cache installiert sind, entfernt der Befehl gacutil /u hello beide Assemblys.
Im folgenden Beispiel wird gezeigt, wie Sie das Entfernen mehrerer Assemblys vermeiden. Dieser Befehl entfernt lediglich die Assembly hello, die der vollständig angegebenen Versionsnummer, der Kultur und dem öffentlichen Schlüssel entspricht.
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.
gacutil /il assemblyList.txt
Mit dem folgenden Befehl werden die in der Datei assemblyList.txt angegebenen Assemblys aus dem globalen Assemblycache entfernt.
gacutil /ul assemblyList.txt
Mit dem folgenden Befehl wird myDll.dll im globalen Assemblycache installiert und ein Verweis für die Zählung hinzugefügt. Die Assembly myDll.dll wird von der Anwendung MyApp verwendet. Der UNINSTALL_KEY MyApp -Parameter gibt den Registrierungsschlüssel an, der MyApp in Windows der Liste unter der Option Software hinzufügt. Der description -Parameter wird als My Application Description angegeben.
gacutil /i /r myDll.dll UNINSTALL_KEY MyApp "My Application Description"
Mit dem folgenden Befehl wird myDll.dll im globalen Assemblycache installiert und ein Verweis für die Zählung hinzugefügt. Der scheme -Parameter FILEPATH und der id -Parameter c:\applications\myApp\myApp.exe geben den Pfad der Anwendung an, die myDll.dll installiert. Der description -Parameter wird als MyApp angegeben.
gacutil /i /r myDll.dll FILEPATH c:\applications\myApp\myApp.exe MyApp
Mit dem folgenden Befehl wird myDll.dll im globalen Assemblycache installiert und ein Verweis für die Zählung hinzugefügt. Der scheme -Parameter OPAQUE ermöglicht die Anpassung des id -Parameters und des 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 durch die Anwendung myApp entfernt. Wenn es sich hierbei um den letzten Verweis auf die Assembly handelt, wird auch die Assembly aus dem Assemblycache entfernt.
gacutil /u /r myDll.dll FILEPATH c:\applications\myApp\myApp.exe MyApp
Der folgende Befehl listet den Inhalt des globalen Assemblycaches auf.
gacutil /l
Siehe auch
Konzepte
Referenz
Assembly Cache Viewer-Tool (Shfusion.dll)