Dela via


Arbeta med sammansättningar och global sammansättningscache

Kommentar

Den här artikeln är specifik för .NET Framework. Det gäller inte för nyare implementeringar av .NET, inklusive .NET 6 och senare versioner.

Om du tänker dela en sammansättning mellan flera program kan du installera den i den globala sammansättningscacheminnet. Varje dator där den gemensamma språkkörningen är installerad har den här datoromfattande kodcachen. Den globala sammansättningscachen lagrar sammansättningar som är specifikt avsedda att delas av flera program på datorn. En sammansättning måste ha ett starkt namn som ska installeras i den globala sammansättningscacheminnet.

Kommentar

Sammansättningar som placeras i den globala sammansättningscacheminnet måste ha samma sammansättningsnamn och filnamn (inte filnamnstillägget). En sammansättning med sammansättningsnamnet myAssembly måste till exempel ha ett filnamn på antingen myAssembly.exe eller myAssembly.dll.

Du bör dela sammansättningar genom att installera dem i den globala sammansättningscachen endast när det behövs. Som en allmän riktlinje ska du hålla sammansättningsberoenden privata och leta upp sammansättningar i programkatalogen såvida inte delning av en sammansättning uttryckligen krävs. Dessutom behöver du inte installera sammansättningar i den globala sammansättningscacheminnet för att göra dem tillgängliga för COM-interop eller ohanterad kod.

Det finns flera orsaker till varför du kanske vill installera en sammansättning i den globala sammansättningscache:

  • Delad plats.

    Sammansättningar som ska användas av program kan placeras i den globala sammansättningscachen. Om alla program till exempel ska använda en sammansättning som finns i den globala sammansättningscachen kan en versionsprincipinstruktor läggas till i filen Machine.config som omdirigerar referenser till sammansättningen.

  • Filsäkerhet.

    Administratörer skyddar ofta systemroot-katalogen med hjälp av en åtkomstkontrollista (ACL) för att styra skriv- och körningsåtkomst. Eftersom den globala sammansättningscachen är installerad i systemroot-katalogen ärver den katalogens ACL. Vi rekommenderar att endast användare med administratörsbehörighet får ta bort filer från den globala sammansättningscacheminnet.

  • Versionshantering sida vid sida.

    Flera kopior av sammansättningar med samma namn men annan versionsinformation kan underhållas i den globala sammansättningscachen.

  • Ytterligare sökplats.

    Den vanliga språkkörningen kontrollerar den globala sammansättningscachen för en sammansättning som matchar sammansättningsbegäran innan avsökning eller användning av kodbasinformationen i en konfigurationsfil.

Observera att det finns scenarier där du uttryckligen inte vill installera en sammansättning i den globala sammansättningscacheminnet. Om du placerar en av de sammansättningar som utgör ett program i den globala sammansättningscacheminnet kan du inte längre replikera eller installera programmet med hjälp av XCOPY för att kopiera programkatalogen. I det här fallet måste du också flytta sammansättningen till den globala sammansättningscacheminnet.

I det här avsnittet

Anvisningar: Installera en sammansättning i den globala sammansättningscachen Beskriver hur du installerar en sammansättning i den globala sammansättningscacheminnet.

Anvisningar: Visa innehållet i den globala sammansättningscachen Förklarar hur du använder Gacutil.exe (Global Assembly Cache Tool) för att visa innehållet i den globala sammansättningscacheminnet.

Anvisningar: Ta bort en sammansättning från den globala sammansättningscachen Förklarar hur du använder Gacutil.exe (Global Assembly Cache Tool) för att ta bort en sammansättning från den globala sammansättningscacheminnet.

Om du använder servicekomponenter med global sammansättningscache förklaras varför servicekomponenter (hanterade COM+-komponenter) ska placeras i den globala sammansättningscacheminnet.

Skapa sammansättningar Ger en översikt över hur du skapar sammansättningar.

Global sammansättningscache beskriver den globala sammansättningscacheminnet.

Anvisningar: Visa sammansättningsinnehåll Förklarar hur du använder Ildasm.exe (IL Disassembler) för att visa gemensam information om mellanliggande språk (CIL) i en sammansättning.

How the Runtime Locates Assemblies Describes how the common language runtime locates and loads the assemblies that make up your application.

Programmering med sammansättningar Beskriver sammansättningar, byggstenarna i hanterade program.