Strumento Global Assembly Cache (Gacutil.exe)
Lo strumento Global Assembly Cache consente di visualizzare e modificare il contenuto della Global Assembly Cache e la cache di download.
gacutil [options] [assemblyName | assemblyPath | assemblyListFile]
Parametri
Argomento | Descrizione |
---|---|
Nomeassembly |
Il nome di un assembly. È possibile fornire un nome di assembly parzialmente specificato quale |
Percorsoassembly |
Il nome di un file contenente un manifesto dell'assembly. |
FileElencoassembly |
Il percorso di un file di testo ANSI che elenca gli assembly da installare o disinstallare. Per utilizzare un file di testo per installare assembly, specificare il percorso di ciascun assembly in una riga separata del file. Verranno interpretati i percorsi relativi rispetto alla posizione di FileElencoassembly. Per utilizzare un file di testo per disinstallare assembly, specificare il nome di assembly completo per ogni assembly in una riga separata del file. Vedere gli esempi di contenuto di FileElencoassembly più avanti in questo argomento. |
Opzione | Descrizione |
---|---|
/cdl |
Elimina il contenuto della cache di download. |
/f |
Specificare questa opzione con le opzioni /i o /il per forzare la reinstallazione di un assembly. Se un assembly con lo stesso nome esiste già nella Global Assembly Cache, verrà sovrascritto. |
/h[elp] |
Visualizza la sintassi e le opzioni dei comandi dello strumento. |
/i Percorsoassembly |
Installa un assembly nella Global Assembly Cache. |
/if Percorsoassembly |
Installa un assembly nella Global Assembly Cache. Se un assembly con lo stesso nome esiste già nella Global Assembly Cache, verrà sovrascritto. Specificare questa opzione equivale a specificare contemporaneamente le opzioni /i e /f. |
/il FileElencoassembly |
Installa uno o più assembly specificati in FileElencoassembly nella Global Assembly Cache. |
/ir Percorsoassembly schema id descrizione |
Installa un assembly nella Global Assembly Cache e aggiunge un riferimento per contare l'assembly. Con questa opzione è necessario specificare i parametri assemblyPath, scheme, id e description. Per una descrizione dei valori validi che è possibile specificare per questi parametri, vedere l'opzione /r. Specificare questa opzione equivale a specificare contemporaneamente le opzioni /i e /r. |
/l [Nomeassembly] |
Elenca il contenuto della Global Assembly Cache. Se si specifica il parametro Nomeassembly, nello strumento vengono elencati solo gli assembly che corrispondono a quel nome. |
/ldl |
Elenca il contenuto della cache dei file scaricati. |
/lr [Nomeassembly] |
Elenca tutti gli assembly e i conteggi dei riferimenti corrispondenti. Se si specifica il parametro Nomeassembly, lo strumento elencherà solo gli assembly che corrispondono al nome e i conteggi dei riferimenti corrispondenti. |
/nologo |
Evita la visualizzazione del messaggio di avvio Microsoft. |
/r [Nomeassembly | Percorsoassembly] schema id descrizione |
Specifica un riferimento di cui si tiene traccia a uno o più assembly da installare o disinstallare. Specificare questa opzione con le opzioni /i, /il, /u o /ul. Per installare un assembly, specificare i parametri assemblyPath, scheme, id e description con questa opzione. Per disinstallare un assembly, specificare i parametri assemblyName, scheme, id e description. Per rimuovere un riferimento a un assembly, è necessario specificare gli stessi parametri schema, id e descrizione specificati con le opzioni /i e /r (o /ir) al momento dell'installazione dell'assembly. Se si sta disinstallando un assembly, viene rimosso anche l'assembly dalla Global Assembly Cache se si tratta dell'ultimo riferimento da rimuovere e se in Windows Installer non ci sono riferimenti residui all'assembly. Il parametro schema specifica il tipo di schema di installazione. È possibile specificare uno dei valori riportati di seguito:
Il valore da specificare per il parametro id dipende dal valore specificato per il parametro schema:
Il parametro descrizione consente di specificare testo descrittivo sull'applicazione da installare. Queste informazioni sono visualizzate quando vengono enumerati i riferimenti. |
/silent |
Evita la visualizzazione di tutto l'output. |
/u Nomeassembly |
Disinstalla un assembly dalla Global Assembly Cache. |
/uf Nomeassembly |
Forza la disinstallazione di un assembly specificato rimuovendone tutti i riferimenti. Specificare questa opzione equivale a specificare contemporaneamente le opzioni /u e /f. Nota Non è possibile utilizzare questa opzione per rimuovere un assembly installato utilizzando Microsoft Windows Installer. Se si tenta di eseguire questa operazione, verrà visualizzato un messaggio di errore. |
/ul FileElencoassembly |
Disinstalla uno o più assembly specificati in FileElencoassembly dalla Global Assembly Cache. |
/u[ngen] Nomeassembly |
Disinstalla un assembly specificato dalla Global Assembly Cache. Se l'assembly specificato dispone di conteggi dei riferimenti esistenti, verranno visualizzati i conteggi dei riferimenti e l'assembly non verrà rimosso dalla Global Assembly Cache. Nota In .NET Framework versione 2.0 l'opzione /ungen non è supportata. Utilizzare in alternativa il comando uninstall del Generatore di immagini native (Ngen.exe). Se si specifica /ungen in .NET Framework versioni 1.0 e 1.1, Gacutil.exe rimuoverà l'assembly dalla cache delle immagini native. In questa cache vengono memorizzate le immagini native per gli assembly creati mediante il Generatore di immagini native (Ngen.exe). |
/ur Nomeassembly schema id descrizione |
Disinstalla un riferimento a un assembly specificato dalla Global Assembly Cache. Per rimuovere un riferimento a un assembly, è necessario specificare gli stessi parametri schema, id, e descrizione specificati con le opzioni /i e /r (o /ir) al momento dell'installazione dell'assembly. Per una descrizione dei valori validi che è possibile specificare per questi parametri, vedere l'opzione /r. Specificare questa opzione equivale a specificare contemporaneamente le opzioni /u e /r. |
/? |
Visualizza la sintassi e le opzioni dei comandi dello strumento. |
Note
Le funzionalità di visualizzazione della cache offerte da questo strumento corrispondono in gran parte a quelle fornite dall'estensione shell di Windows (Shfusion.dll), ma Gacutil.exe è maggiormente utilizzabile da script di generazione, makefile e file batch.
Nota
È necessario disporre dei privilegi di amministratore per utilizzare Gacutil.exe.
In particolare, Gacutil.exe consente di installare e rimuovere assembly dalla cache, nonché elencare il contenuto della cache stessa.
Gacutil.exe offre opzioni che supportano un conteggio dei riferimenti simile allo schema di conteggio dei riferimenti supportato da Windows Installer. È possibile utilizzare Gacutil.exe per installare due applicazioni che installano lo stesso assembly in quanto consente di tenere traccia del numero di riferimenti all'assembly. Di conseguenza, l'assembly resta sul computer fino alla completa disinstallazione di entrambe le applicazioni. Se si utilizza Gacutil.exe per l'installazione di prodotti effettivi, utilizzare le opzioni che supportano il conteggio dei riferimenti. Utilizzare le opzioni /i e /r contemporaneamente per installare un assembly e aggiungere un riferimento per il conteggio. Utilizzare le opzioni /u e /r contemporaneamente per rimuovere un conteggio dei riferimenti per un assembly. L'utilizzo delle opzioni /i e /u singolarmente non supporta il conteggio dei riferimenti. Queste opzioni possono essere utilizzate durante lo sviluppo dei prodotti ma non per l'installazione di prodotti effettivi.
Utilizzare le opzioni /il o /ul per installare o disinstallare un elenco di assembly archiviati in un file di testo ANSI. Il contenuto del file di testo deve essere formattato correttamente. Per utilizzare un file di testo per installare assembly, specificare il percorso di ciascun assembly in una riga separata del file. Nell'esempio che segue viene illustrato il contenuto di un file contenente assembly da installare.
myAssembly1.dll
myAssembly2.dll
myAssembly3.dll
Per utilizzare un file di testo per disinstallare assembly, specificare il nome di assembly completo per ogni assembly in una riga separata del file. Nell'esempio che segue viene illustrato il contenuto di un file contenente assembly da disinstallare.
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
Esempi
Il comando riportato di seguito consente di installare l'assembly mydll.dll
nella Global Assembly Cache.
gacutil /i mydll.dll
Il comando riportato di seguito consente di rimuovere l'assembly hello
dalla Global Assembly Cache purché non esista alcun conteggio dei riferimenti per l'assembly.
gacutil /u hello
Si noti che il comando precedente può causare la rimozione di più assembly dalla cache dell'assembly in quanto il nome dell'assembly non è completo. Se ad esempio nella cache sono installate sia la versione 1.0.0.0 che la versione 3.2.2.1 di hello
, il comando gacutil /u hello
rimuoverà entrambi gli assembly.
L'esempio che segue illustra come evitare che vengano rimossi più assembly. Questo comando rimuove solo l'assembly hello
corrispondente alla chiave pubblica, alla lingua e al numero di versione specificati in modo completo.
gacutil /u hello, Version=1.0.0.1, Culture="de",PublicKeyToken=45e343aae32233ca
Il comando riportato di seguito consente di installare gli assembly specificati nel file assemblyList.txt
nella Global Assembly Cache.
gacutil /il assemblyList.txt
Il comando riportato di seguito consente di rimuovere gli assembly specificati nel file assemblyList.txt
dalla Global Assembly Cache.
gacutil /ul assemblyList.txt
Il comando riportato di seguito consente di installare myDll.dll
nella Global Assembly Cache e di aggiungere un riferimento per il conteggio. L'assembly myDll.dll
viene utilizzato dall'applicazione MyApp
. Il parametro UNINSTALL_KEY MyApp
specifica la chiave del Registro di sistema che aggiunge MyApp
a Installazione applicazioni in Windows. Il parametro relativo alla descrizione è specificato come My Application Description
.
gacutil /i /r myDll.dll UNINSTALL_KEY MyApp "My Application Description"
Il comando riportato di seguito consente di installare myDll.dll
nella Global Assembly Cache e di aggiungere un riferimento per il conteggio. Il parametro relativo allo schema, FILEPATH
, e quello relativo all'id, c:\applications\myApp\myApp.exe
, specificano il percorso dell'applicazione che installa myDll.dll.
Il parametro relativo alla descrizione viene specificato come MyApp
.
gacutil /i /r myDll.dll FILEPATH c:\applications\myApp\myApp.exe MyApp
Il comando riportato di seguito consente di installare myDll.dll
nella Global Assembly Cache e di aggiungere un riferimento per il conteggio. Il parametro relativo allo schema, OPAQUE
, consente di personalizzare i parametri relativi all'id e alla descrizione.
gacutil /i /r mydll.dll OPAQUE "Insert custom application details here" "Insert Custom description information here"
Il comando riportato di seguito consente di rimuovere il riferimento a myDll.dll
dall'applicazione myApp
. Se si tratta dell'ultimo riferimento all'assembly, verrà anche rimosso l'assembly dalla Global Assembly Cache.
gacutil /u /r myDll.dll FILEPATH c:\applications\myApp\myApp.exe MyApp
Il comando che segue elenca il contenuto della Global Assembly Cache.
gacutil /l
Vedere anche
Riferimenti
Strumenti di .NET Framework
Visualizzatore Assembly Cache (Shfusion.dll)
Strumento di registrazione degli assembly (Regasm.exe)
Prompt dei comandi di SDK