Gacutil.exe (nástroj Globální mezipaměť sestavení)
Nástroj Global Assembly Cache umožňuje zobrazit a měnit obsah globální mezipaměti sestavení (GAC) a mezipaměti pro stahování.
Tento nástroj je automaticky nainstalován se sadou Visual Studio. Ke spuštění nástroje použijte Visual Studio Developer Command Prompt nebo Visual Studio Developer PowerShell.
V příkazovém řádku zadejte následující:
Syntaxe
gacutil [options] [assemblyName | assemblyPath | assemblyListFile]
Parametry
Argument | Description |
---|---|
Assemblyname | Název sestavení. Můžete zadat buď částečně zadaný název sestavení, například myAssembly , nebo plně zadaný název sestavení, například myAssembly, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0038abc9deabfle5 . |
cesta sestavení | Název souboru obsahujícího manifest sestavení. |
soubor seznamu sestavení | Cesta k textovému souboru ANSI obsahujícímu sestavení, která mají být nainstalována nebo odinstalována. Chcete-li použít textový soubor pro instalaci sestavení, zadejte cestu ke každému sestavení na samostatný řádek souboru. Nástroj interpretuje relativní cesty vzhledem k umístění souboru assemblyListFile. Chcete-li použít textový soubor k odinstalování sestavení, zadejte plně kvalifikovaný název každého sestavení na samostatném řádku v souboru. Podívejte se na příklady obsahu assemblyListFile dále v tomto tématu. |
Možnost | Popis |
---|---|
/Cdl | Odstraní obsah mezipaměti pro stahování. |
/F | Tuto možnost zadejte s možnostmi /i nebo /il , pokud chcete vynutit přeinstalaci sestavení. Pokud sestavení se stejným názvem již v globální mezipaměti sestavení (GAC) existuje, nástroj je přepíše. |
/h[elp] | Zobrazí syntaxi příkazu a možnosti nástroje. |
/icesta sestavení | Nainstaluje sestavení do globální mezipaměti sestavení (GAC). |
/ifcesta sestavení | Nainstaluje sestavení do globální mezipaměti sestavení (GAC). Pokud sestavení se stejným názvem již v globální mezipaměti sestavení (GAC) existuje, nástroj je přepíše. Zadání této možnosti je ekvivalentní k zadání možností /i a /f společně. |
/ilassemblyListFile | Nainstaluje jedno nebo více sestavení zadaných v souboru assemblyListFile do globální mezipaměti sestavení (GPA). |
/irassemblyPath Schéma id description |
Nainstaluje sestavení do globální mezipaměti sestavení a přidá odkaz pro jeho započítání. Pomocí této možnosti je nutné zadat parametry assemblyPath, scheme, id a description . Popis platných hodnot, které můžete pro tyto parametry zadat, najdete v parametru /r . Zadání této možnosti je ekvivalentní k zadání možností /i a /r společně. |
/l [název_sestavení] | Zobrazí obsah globální mezipaměti sestavení (GAC). Pokud zadáte parametr assemblyName , nástroj vypíše pouze sestavení s tímto názvem. |
/Ldl | Vypíše obsah mezipaměti stažených souborů. |
/lr [název_sestavení] | Vypíše všechna sestavení a jim odpovídající počty odkazů. Pokud zadáte parametr assemblyName , nástroj vypíše pouze sestavení s tímto názvem a jejich odpovídající počty odkazů. |
/nologo | Potlačí zobrazení úvodního nápisu společnosti Microsoft. |
/r [assemblyName | assemblyPath] Schéma id description |
Určuje trasovaný odkaz na sestavení, která mají být nainstalována nebo odinstalována. Tuto možnost zadejte pomocí možností /i, /il, /u nebo /ul . Chcete-li nainstalovat sestavení, zadejte parametr assemblyPath, schéma, id a popis pomocí této možnosti. Chcete-li odinstalovat sestavení, zadejte parametry assemblyName, scheme, id a description . Chcete-li odebrat odkaz na sestavení, je nutné zadat stejné schéma, id a popis parametry, které byly zadány s možnostmi /i a /r (nebo /ir) při instalaci sestavení. Provádíte-li odinstalování sestavení, nástroj odstraní sestavení také z globální mezipaměti sestavení (GAC) za předpokladu, že jde o poslední odstraňovaný odkaz a že Instalační služba systému Windows nemá na sestavení žádné zbývající odkazy. Parametr schématu určuje typ instalačního schématu. Můžete určit jednu z následujících hodnot: - UNINSTALL_KEY: Tuto hodnotu zadejte, pokud instalační program přidá aplikaci do nástroje Přidat nebo odebrat programy v systému Microsoft Windows. Aplikace se přidávají do ovládacího panelu Přidat nebo odebrat programy přidáním klíče registru HKLM\Software\Microsoft\Windows\CurrentVersion. - FILEPATH: Tuto hodnotu zadejte, pokud instalační program nepřidá aplikaci do funkce Přidat nebo odebrat programy. - NEPRŮŽNÉ: Tuto hodnotu zadejte, pokud se zadání klíče registru nebo cesty k souboru nevztahuje na scénář instalace. Tato hodnota umožňuje zadat vlastní informace pro parametr id . Hodnota, která se má zadat pro parametr id , závisí na hodnotě zadané pro parametr schématu : – Pokud jako parametr schématu zadáte UNINSTALL_KEY, zadejte název aplikace nastavené v klíči registru HKLM\Software\Microsoft\Windows\CurrentVersion. Pokud je klíč registru například HKLM\Software\Microsoft\Windows\CurrentVersion\MyApp, jako parametr id zadejte MyApp. – Pokud jako parametr schématu zadáte FILEPATH, zadejte úplnou cestu ke spustitelnému souboru, který instaluje sestavení, jako parametr id . – Pokud jako parametr schématu zadáte NEPRŮŽNÉ, můžete jako parametr id zadat libovolnou část dat. Zadaná data musí být uzavřena do uvozovek (""). Parametr description umožňuje zadat popisný text o aplikaci, která se má nainstalovat. Tyto informace se zobrazují při výčtu odkazů. |
/silent | Potlačí zobrazování všech výstupů. |
/unázev sestavení | Odinstaluje sestavení z globální mezipaměti sestavení (GAC). |
/ufassemblyName | Vynutí odinstalování zadaného sestavení odstraněním všech odkazů na něj. Zadání této možnosti je ekvivalentní k zadání možností /u a /f společně. Poznámka: Tuto možnost nelze použít k odebrání sestavení, které bylo nainstalováno pomocí Instalační služby systému Microsoft Windows. Pokud se o tuto operaci pokusíte, nástroj zobrazí chybovou zprávu. |
/ulassemblyListFile | Odinstaluje jedno nebo více sestavení zadaných v souboru assemblyListFile z globální mezipaměti sestavení (GPA). |
/u[ngen] assemblyName | Odinstaluje zadané sestavení z globální mezipaměti sestavení (GAC). Existují-li pro zadané sestavení počty odkazů, nástroj tyto počty zobrazí a neodstraní sestavení z globální mezipaměti sestavení (GAC). Poznámka: V rozhraní .NET Framework verze 2.0 /ungen se nepodporuje. Místo toho použijte uninstall příkaz Ngen.exe (Native Image Generator). V rozhraní .NET Framework verze 1.0 a 1.1 zadání /ungen způsobí Gacutil.exe odebrání sestavení z mezipaměti nativních bitových kopií. Tato mezipaměť ukládá nativní image pro sestavení, která byla vytvořena pomocí Ngen.exe (Native Image Generator). |
/urassemblyName Schéma id description |
Odinstaluje odkaz na zadané sestavení z globální mezipaměti sestavení (GAC). Chcete-li odebrat odkaz na sestavení, je nutné zadat stejné schéma, ID a popis parametry, které byly zadány s možnostmi /i a /r (nebo /ir) při instalaci sestavení. Popis platných hodnot, které můžete pro tyto parametry zadat, najdete v možnosti /r . Zadání této možnosti je ekvivalentní k zadání možností /u a /r společně. |
/? | Zobrazí syntaxi příkazu a možnosti nástroje. |
Poznámky
Poznámka
Pro používání nástroje Gacutil.exe je zapotřebí mít oprávnění správce.
Nástroj Gacutil.exe konkrétně umožňuje nainstalovat sestavení do mezipaměti, odstranit je z mezipaměti a vypsat obsah mezipaměti.
Nástroj Gacutil.exe poskytuje možnosti, které podporují počítání odkazů podobné schématu počítání odkazů podporovanému Instalační službou systému Windows. Nástroj Gacutil.exe lze použít k instalaci dvou aplikací, které instalují stejné sestavení. Nástroj sleduje počet odkazů na sestavení. V důsledku toho zůstane sestavení v počítači, dokud nejsou obě aplikace odinstalovány. Používáte-li nástroj Gacutil.exe k instalacím skutečných produktů, použijte možnosti podporující počítání odkazů. Pomocí možností /i a /r společně nainstalujte sestavení a přidejte odkaz k jeho spočítání. Pomocí možností /u a /r odeberte počet odkazů pro sestavení. Mějte na paměti, že použití samotných možností /i a /u nepodporuje počítání odkazů. Tyto možnosti je vhodné použít při vývoji produktu, ale nikoli pro jeho skutečnou instalaci.
Pomocí možností /il nebo /ul nainstalujte nebo odinstalujte seznam sestavení uložených v textovém souboru ANSI. Obsah textového souboru musí být správně naformátován. Chcete-li použít textový soubor pro instalaci sestavení, zadejte cestu ke každému sestavení na samostatný řádek souboru. Následující příklad ukazuje obsah souboru obsahujícího sestavení, která mají být nainstalována.
myAssembly1.dll
myAssembly2.dll
myAssembly3.dll
Chcete-li použít textový soubor k odinstalování sestavení, zadejte plně kvalifikovaný název každého sestavení na samostatném řádku v souboru. Následující příklad ukazuje obsah souboru obsahujícího sestavení, která mají být odinstalována.
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
Poznámka
Při pokusu o instalaci sestavení s názvem souboru delším než 79 až 91 znaků (s výjimkou přípony souboru) může dojít k následující chybě:
Failure adding assembly to the cache: The file name is too long.
Je to proto, že interně Gacutil.exe vytvoří cestu až MAX_PATH znaků, která se skládá z následujících prvků:
- Kořen GAC – 34 znaků (tj.
C:\Windows\Microsoft.NET\assembly\
) - Architektura – 7 nebo 9 znaků (tj.
GAC_32\
,GAC_64\
)GAC_MSIL
- AssemblyName – až 91 znaků v závislosti na velikosti ostatních prvků (např.
System.Xml.Linq\
) - AssemblyInfo – 31 až 48 znaků nebo více, které se skládají z:
- Framework – 5 znaků (např.
v4.0_
) - AssemblyVersion - 8 až 24 znaků (např.
9.0.1000.0_
) - AssemblyLanguage - 1 až 8 znaků (např.
de_
,sr-Cyrl_
) - PublicKey - 17 znaků (např.
31bf3856ad364e35\
)
- Framework – 5 znaků (např.
- DllFileName – až 91 + 4 znaky (tj.
<AssemblyName>.dll
)
Příklady
Následující příkaz nainstaluje sestavení mydll.dll
do globální mezipaměti sestavení .
gacutil /i mydll.dll
Následující příkaz odebere sestavení hello
z globální mezipaměti sestavení ,pokud pro sestavení neexistují žádné odkazy.
gacutil /u hello
Předchozí příkaz může z mezipaměti sestavení odebrat více než jedno sestavení, protože název sestavení není zadán úplně. Pokud jsou například v mezipaměti nainstalovány obě verze 1.0.0.0 a 3.2.2.1, hello
příkaz gacutil /u hello
odebere obě sestavení.
Chcete-li zabránit odebrání více než jednoho sestavení, použijte následující příkaz. Tento příkaz odebere pouze sestavení, které odpovídá plně zadanému číslu verze, jazykové verzi a veřejnému hello
klíči.
gacutil /u hello, Version=1.0.0.1, Culture="de",PublicKeyToken=45e343aae32233ca
Následující příkaz nainstaluje sestavení zadaná v souboru assemblyList.txt
do globální mezipaměti sestavení (GM).
gacutil /il assemblyList.txt
Následující příkaz odebere sestavení zadaná v souboru assemblyList.txt
z globální mezipaměti sestavení .
gacutil /ul assemblyList.txt
Následující příkaz se nainstaluje myDll.dll
do globální mezipaměti sestavení (GPA) a přidá odkaz pro spočítání. Sestavení myDll.dll
je používáno aplikací MyApp
. Parametr UNINSTALL_KEY MyApp
určuje klíč registru, který se přidá MyApp
do funkce Přidat nebo odebrat programy v systému Windows. Parametr description je zadaný jako My Application Description
.
gacutil /i /r myDll.dll UNINSTALL_KEY MyApp "My Application Description"
Následující příkaz se nainstaluje myDll.dll
do globální mezipaměti sestavení (GPA) a přidá odkaz pro spočítání. Parametr FILEPATH
schématu a parametr id určují cestu k aplikaci, c:\applications\myApp\myApp.exe
která instaluje myDll.dll.
. Parametr description je zadaný jako MyApp
.
gacutil /i /r myDll.dll FILEPATH c:\applications\myApp\myApp.exe MyApp
Následující příkaz se nainstaluje myDll.dll
do globální mezipaměti sestavení (GPA) a přidá odkaz pro spočítání. Parametr schématu OPAQUE
umožňuje přizpůsobit parametry id a popisu.
gacutil /i /r mydll.dll OPAQUE "Insert custom application details here" "Insert Custom description information here"
Následující příkaz odebere odkaz aplikace myDll.dll
myApp
na . Jde-li o poslední odkaz na sestavení, příkaz toto sestavení zároveň odebere z globální mezipaměti sestavení (GAC).
gacutil /u /r myDll.dll FILEPATH c:\applications\myApp\myApp.exe MyApp
Následující příkaz vypíše obsah globální mezipaměti sestavení (GAC).
gacutil /l
Viz také
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat Problémy GitHubu jako mechanismus zpětné vazby pro obsah a nahradíme ho novým systémem zpětné vazby. Další informace najdete tady:Odeslat a zobrazit názory pro