Gacutil.exe (globális szerelvénygyorsítótár-eszköz)
A Globális szerelvénygyorsítótár eszköz lehetővé teszi a globális szerelvénygyorsítótár tartalmának megtekintését és manipulálását, valamint a gyorsítótár letöltését.
Ez az eszköz automatikusan telepítve van a Visual Studióval. Az eszköz futtatásához használja a Visual Studio fejlesztői parancssorát vagy a Visual Studio Developer PowerShellt.
A parancssorba írja be a következőt:
Syntax
gacutil [options] [assemblyName | assemblyPath | assemblyListFile]
Paraméterek
Argumentum | Leírás |
---|---|
assemblyName | Egy szerelvény neve. Megadhat egy részben megadott szerelvénynevet, például myAssembly egy teljes szerelvénynevet, például myAssembly, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0038abc9deabfle5 . |
assemblyPath | A szerelvényjegyzéket tartalmazó fájl neve. |
assemblyListFile | Az ANSI-szövegfájl elérési útja, amely felsorolja a telepítéshez vagy eltávolításhoz szükséges szerelvényeket. Ha szövegfájlt szeretne használni szerelvények telepítéséhez, adja meg az egyes szerelvények elérési útját a fájl egy külön sorában. Az eszköz a assemblyListFile helyéhez képest értelmezi a relatív elérési utakat. Ha szövegfájlt szeretne használni a szerelvények eltávolításához, adja meg az egyes szerelvények teljes szerelvénynevét a fájl egy külön sorában. Tekintse meg a assemblyListFile tartalomra vonatkozó példákat a témakör későbbi részében. |
Lehetőség | Leírás |
---|---|
/cdl | Törli a letöltési gyorsítótár tartalmát. |
/f | Adja meg ezt a beállítást az /i vagy /il beállításokkal, hogy kényszerítsen egy szerelvényt az újratelepítésre. Ha már létezik azonos nevű szerelvény a globális szerelvény-gyorsítótárban, az eszköz felülírja azt. |
/h[elp] | Megjeleníti az eszköz parancsszintaxisát és beállításait. |
/i assemblyPath | Szerelvény telepítése a globális szerelvény-gyorsítótárba. |
/if assemblyPath | Szerelvény telepítése a globális szerelvény-gyorsítótárba. Ha már létezik azonos nevű szerelvény a globális szerelvény-gyorsítótárban, az eszköz felülírja azt. A beállítás megadása egyenértékű az /i és /f beállítások együttes megadásával. |
/il assemblyListFile | Telepíti a assemblyListFile fájlban megadott egy vagy több szerelvényt a globális szerelvény-gyorsítótárba. |
/ir assemblyPath cselszövés id leírás |
Szerelvényt telepít a globális szerelvény-gyorsítótárba, és hozzáad egy hivatkozást a szerelvény megszámlálásához. Ezzel a beállítással meg kell adnia a assemblyPath, a séma, az azonosító és a leírás paramétereit. A paraméterekhez megadható érvényes értékek leírását a /r beállításban találja. A beállítás megadása egyenértékű az /i és /r beállítások együttes megadásával. |
/l [assemblyName] | A globális szerelvény-gyorsítótár tartalmát sorolja fel. Ha megadja a assemblyName paramétert, az eszköz csak az adott névnek megfelelő szerelvényeket listázza. |
/Ldl | A letöltött fájlok gyorsítótárának tartalmát sorolja fel. |
/lr [assemblyName] | Felsorolja az összes szerelvényt és azok hivatkozási számát. Ha megadja a assemblyName paramétert, az eszköz csak azokat a szerelvényeket sorolja fel, amelyek megfelelnek a névnek és a hozzájuk tartozó hivatkozási számoknak. |
/nologo | Letiltja a Microsoft indítási szalagcímének megjelenítését. |
/r [assemblyName | assemblyPath] cselszövés id leírás |
Egy szerelvényre vagy szerelvényekre mutató nyomkövetési hivatkozást ad meg a telepítéshez vagy eltávolításhoz. Adja meg ezt a beállítást az /i, /il, /u vagy /ul beállításokkal. Szerelvény telepítéséhez adja meg a assemblyPath, a séma, az azonosító és a leírás paramétereit ezzel a beállítással. Egy szerelvény eltávolításához adja meg a assemblyName, a séma, az azonosító és a leírás paramétereit. Egy szerelvényre mutató hivatkozás eltávolításához meg kell adnia ugyanazokat a séma-, azonosító- és leírásparamétereket , amelyek a szerelvény telepítésekor az /i és /r (vagy /ir) beállításokkal lettek megadva. Ha eltávolít egy szerelvényt, az eszköz eltávolítja a szerelvényt a globális szerelvény-gyorsítótárból is, ha ez az utolsó eltávolítási hivatkozás, és ha a Windows Installer nem rendelkezik a szerelvényre mutató kiemelkedő hivatkozásokkal. A sémaparaméter a telepítési séma típusát határozza meg. A következő értékek egyikét adhatja meg: - UNINSTALL_KEY: Adja meg ezt az értéket, ha a telepítő hozzáadja az alkalmazást a Programok hozzáadása/eltávolítása a Microsoft Windowsban. Az alkalmazások a HKLM\Software\Microsoft\Windows\CurrentVersion beállításkulcs hozzáadásával hozzáadják magukat a programok hozzáadásához/eltávolításához. - FILEPATH: Adja meg ezt az értéket, ha a telepítő nem adja hozzá az alkalmazást a programok hozzáadásához/eltávolításához. - OPAQUE: Adja meg ezt az értéket, ha a beállításkulcs vagy a fájl elérési útja nem vonatkozik a telepítési forgatókönyvre. Ez az érték lehetővé teszi az azonosító paraméter egyéni információinak megadását. Az azonosító paraméterhez megadható érték a sémaparaméterhez megadott értéktől függ: - Ha UNINSTALL_KEY a sémaparaméterhez, adja meg a HKLM\Software\Microsoft\Windows\CurrentVersion beállításkulcsban beállított alkalmazás nevét. Ha például a beállításkulcs HKLM\Software\Microsoft\Windows\CurrentVersion\MyApp, adja meg a MyAppot az azonosító paraméterhez. - Ha a sémaparaméterHEZ a FILEPATH paramétert adja meg, adja meg a szerelvényt azonosító paraméterként telepítő végrehajtható fájl teljes elérési útját. – Ha OPAQUE értéket ad meg a sémaparaméterhez, az azonosító paraméterként bármilyen adatot megadhat. A megadott adatokat idézőjelek közé kell foglalni (""). A leírási paraméter lehetővé teszi a telepíteni kívánt alkalmazás leíró szövegének megadását. Ez az információ a hivatkozások számbavételekor jelenik meg. |
/csendes | Letiltja az összes kimenet megjelenítését. |
/u assemblyName | Eltávolít egy szerelvényt a globális szerelvény-gyorsítótárból. |
/uf assemblyName | A megadott szerelvény eltávolítására kényszeríti a szerelvényre mutató összes hivatkozást. A beállítás megadása egyenértékű az /u és /f beállítások együttes megadásával. Megjegyzés: Ezzel a beállítással nem távolíthat el a Microsoft Windows Installer használatával telepített szerelvényt. Ha megkísérli ezt a műveletet, az eszköz hibaüzenetet jelenít meg. |
/ul assemblyListFile | Eltávolítja a assemblyListFile fájlban megadott egy vagy több szerelvényt a globális szerelvény-gyorsítótárból. |
/u[ngen] assemblyName | Eltávolít egy adott szerelvényt a globális szerelvény-gyorsítótárból. Ha a megadott szerelvény rendelkezik meglévő hivatkozásszámokkal, az eszköz megjeleníti a referenciaszámokat, és nem távolítja el a szerelvényt a globális szerelvény-gyorsítótárból. Megjegyzés: .NET-keretrendszer 2.0-s /ungen verziója nem támogatott. Ehelyett használja a uninstall Ngen.exe (natív képgenerátor) parancsát. Az .NET-keretrendszer 1.0-s és 1.1-s verzióiban a /ungen megadásával Gacutil.exe eltávolítani a szerelvényt a natív képgyorsítótárból. Ez a gyorsítótár az Ngen.exe (natív képgenerátor) használatával létrehozott szerelvények natív lemezképeit tárolja. |
/ur assemblyName cselszövés id leírás |
Eltávolít egy adott szerelvényre mutató hivatkozást a globális szerelvény-gyorsítótárból. Egy szerelvényre mutató hivatkozás eltávolításához meg kell adnia ugyanazokat a séma-, azonosító- és leírásparamétereket , amelyek a szerelvény telepítésekor az /i és /r (vagy /ir) beállításokkal lettek megadva. A paraméterekhez megadható érvényes értékek leírását a /r beállításban találja. A beállítás megadása egyenértékű az /u és /r beállítások együttes megadásával. |
/? | Megjeleníti az eszköz parancsszintaxisát és beállításait. |
Megjegyzések
Feljegyzés
A Gacutil.exe használatához rendszergazdai jogosultságokkal kell rendelkeznie.
Pontosabban Gacutil.exe lehetővé teszi, hogy szerelvényeket telepítsen a gyorsítótárba, távolítsa el őket a gyorsítótárból, és listázhassa a gyorsítótár tartalmát.
Gacutil.exe a Windows Installer által támogatott hivatkozásszámlálási sémához hasonló hivatkozásszámlálást támogató lehetőségeket biztosít. A Gacutil.exe két olyan alkalmazás telepítéséhez használható, amelyek ugyanazt a szerelvényt telepítik; az eszköz nyomon követi a szerelvényre mutató hivatkozások számát. Ennek eredményeképpen a szerelvény mindaddig a számítógépen marad, amíg mindkét alkalmazást el nem távolítja. Ha Gacutil.exe használ a tényleges terméktelepítésekhez, használja a hivatkozásszámlálást támogató beállításokat. Az /i és /r beállítások együttes használatával telepítsen egy szerelvényt, és adjon hozzá egy hivatkozást a számláláshoz. Az /u és /r beállítások együttes használatával eltávolíthatja a szerelvény hivatkozásainak számát. Vegye figyelembe, hogy a /i és /u beállítások használata önmagában nem támogatja a hivatkozásszámlálást. Ezek a lehetőségek a termékfejlesztés során használhatók, de a tényleges terméktelepítésekhez nem.
Az /il vagy /ul beállításokkal telepítheti vagy eltávolíthatja az ANSI-szövegfájlban tárolt szerelvények listáját. A szövegfájl tartalmát megfelelően kell formázni. Ha szövegfájlt szeretne használni szerelvények telepítéséhez, adja meg az egyes szerelvények elérési útját a fájl egy külön sorában. Az alábbi példa egy telepíteni kívánt szerelvényeket tartalmazó fájl tartalmát mutatja be.
myAssembly1.dll
myAssembly2.dll
myAssembly3.dll
Ha szövegfájlt szeretne használni a szerelvények eltávolításához, adja meg az egyes szerelvények teljes szerelvénynevét a fájl egy külön sorában. Az alábbi példa egy eltávolítandó szerelvényeket tartalmazó fájl tartalmát mutatja be.
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
Feljegyzés
Ha egy 79 és 91 karakternél hosszabb fájlnévvel rendelkező szerelvényt próbál telepíteni (a fájlkiterjesztés kivételével), a következő hibát okozhatja:
Failure adding assembly to the cache: The file name is too long.
Ennek az az oka, hogy belsőleg Gacutil.exe legfeljebb MAX_PATH karakterből álló útvonalat hoz létre, amely a következő elemekből áll:
- GAC-gyökér – 34 karakter (azaz
C:\Windows\Microsoft.NET\assembly\
) - Architektúra – 7 vagy 9 karakter (azaz
GAC_32\
,GAC_64\
)GAC_MSIL
- AssemblyName - Legfeljebb 91 karakter, a többi elem méretétől függően (pl.
System.Xml.Linq\
) - AssemblyInfo - 31-48 karakter vagy több, amely a következőkből áll:
- Keretrendszer - 5 karakter (pl.
v4.0_
) - AssemblyVersion - 8-24 karakter (pl.
9.0.1000.0_
) - AssemblyLanguage - 1-8 karakter (pl.
de_
,sr-Cyrl_
) - PublicKey - 17 karakter (pl.
31bf3856ad364e35\
)
- Keretrendszer - 5 karakter (pl.
- DllFileName – Legfeljebb 91 + 4 karakter (azaz
<AssemblyName>.dll
)
Példák
Az alábbi parancs telepíti a szerelvényt mydll.dll
a globális szerelvény-gyorsítótárba.
gacutil /i mydll.dll
Az alábbi parancs eltávolítja a szerelvényt hello
a globális szerelvény-gyorsítótárból, ha a szerelvényhez nincs hivatkozási szám.
gacutil /u hello
Vegye figyelembe, hogy az előző parancs több szerelvényt is eltávolíthat a szerelvény-gyorsítótárból, mert a szerelvény neve nincs teljesen megadva. Ha például az 1.0.0.0-s és a 3.2.2.1-es hello
verzió is telepítve van a gyorsítótárban, a parancs gacutil /u hello
mindkét szerelvényt eltávolítja.
Az alábbi példában elkerülheti, hogy egynél több szerelvényt távolítson el. Ez a parancs csak a hello
teljes verziószámnak, kultúrának és nyilvános kulcsnak megfelelő szerelvényt távolítja el.
gacutil /u hello, Version=1.0.0.1, Culture="de",PublicKeyToken=45e343aae32233ca
Az alábbi parancs telepíti a fájlban assemblyList.txt
megadott szerelvényeket a globális szerelvény-gyorsítótárba.
gacutil /il assemblyList.txt
Az alábbi parancs eltávolítja a fájlban assemblyList.txt
megadott szerelvényeket a globális szerelvény-gyorsítótárból.
gacutil /ul assemblyList.txt
A következő parancs a globális szerelvény-gyorsítótárba települ myDll.dll
, és hozzáad egy hivatkozást a számláláshoz. A szerelvényt myDll.dll
az alkalmazás MyApp
használja. A UNINSTALL_KEY MyApp
paraméter megadja azt a beállításkulcsot, amely hozzáadja MyApp
a Windows programok hozzáadásához/eltávolításához. A leírási paraméter a következőként My Application Description
van megadva: .
gacutil /i /r myDll.dll UNINSTALL_KEY MyApp "My Application Description"
A következő parancs a globális szerelvény-gyorsítótárba települ myDll.dll
, és hozzáad egy hivatkozást a számláláshoz. A sémaparaméter és FILEPATH
az azonosító paraméter c:\applications\myApp\myApp.exe
adja meg a leírási paramétert MyApp
telepítő myDll.dll.
alkalmazás elérési útját.
gacutil /i /r myDll.dll FILEPATH c:\applications\myApp\myApp.exe MyApp
A következő parancs a globális szerelvény-gyorsítótárba települ myDll.dll
, és hozzáad egy hivatkozást a számláláshoz. A sémaparaméter OPAQUE
lehetővé teszi az azonosító- és leírásparaméterek testreszabását.
gacutil /i /r mydll.dll OPAQUE "Insert custom application details here" "Insert Custom description information here"
Az alábbi parancs eltávolítja az alkalmazás myApp
által hivatkozott hivatkozástmyDll.dll
. Ha ez az utolsó hivatkozás a szerelvényre, akkor a szerelvényt is eltávolítja a globális szerelvény-gyorsítótárból.
gacutil /u /r myDll.dll FILEPATH c:\applications\myApp\myApp.exe MyApp
Az alábbi parancs a globális szerelvény-gyorsítótár tartalmát sorolja fel.
gacutil /l