Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Ett program betraktas som ett isolerat program om alla dess komponenter är sida vid sida-sammansättningar. En sida vid sida-sammansättning är en samling resurser – en grupp DLL:er, Windows-klasser, COM-servrar, typbibliotek eller gränssnitt – som distribueras tillsammans och görs tillgängliga för ett program att använda vid körning. Vanligtvis är en sida vid sida-sammansättning en till flera DLL:er.
Delad eller privat
En sida vid sida-sammansättning kan antingen delas eller privat. Delade sammansättningar sida vid sida kan användas av flera program som i sina manifest anger ett beroende av sammansättningen. Flera versioner av en sida vid sida-sammansättning kan delas av olika program som körs samtidigt. En privat sammansättning är en sammansättning som distribueras tillsammans med ett program för exklusiv användning av programmet. Privata sammansättningar installeras i mappen som innehåller programmets körbara fil eller någon av dess undermappar.
Manifest och sökordning
Både isolerade program och sammansättningar sida vid sida beskrivs av manifest. Ett manifest är ett XML-dokument som kan vara en extern fil eller som kan bäddas in i ett program eller en sammansättning som en resurs. Manifestfilen för ett isolerat program används för att hantera namn och versioner av delade sammansättningar sida vid sida som programmet ska bindas till vid körning. Manifestet för en side-by-side-sammansättning anger namn, versioner, resurser och beroende sammansättningar av side-by-side-sammansättningar. För en delad sida vid sida-sammansättning installeras dess manifest i mappen %WINDIR%\WinSxS\Manifests\. När det gäller en privat sammansättning rekommenderar vi att du inkluderar dess manifest i DLL som en resurs som har ett ID som är lika med 1. Du kan också ge den privata sammansättningen samma namn som DLL-filen. Mer information finns i Om privata sammansättningar.
När programmet körs använder Windows sammansättningsinformation från programmanifestet för att söka efter och ladda in den motsvarande sammanställningen i sidled. Om ett isolerat program anger ett sammansättningsberoende söker operativsystemet först efter sammansättningen bland de delade sammansättningarna i den interna sammansättningscachen i mappen %WINDIR%\WinSxS\. Om den nödvändiga sammansättningen inte hittas söker operativsystemet efter en privat sammansättning i en mapp i programmets katalogstruktur. Mer information finns i Sekvens för sammansättningssökning.
Ändra beroenden
Du kan ändra sammansättningsberoenden sida vid sida när ett program har distribuerats genom att ändra Konfigurationsfiler för Publisher och Programkonfigurationsfiler. En utgivarkonfigurationsfil, även kallad en utgivarprincipfil, är en XML-fil som globalt omdirigerar program och sammansättningar från att använda en version av en sida vid sida-sammansättning till att använda en annan version av samma sammansättning. Du kan till exempel ändra ett beroende när en felkorrigering eller säkerhetskorrigering distribueras för en sida-vid-sida-sammansättning och du vill omdirigera alla program till att använda den fasta versionen. En programkonfigurationsfil är en XML-fil som omdirigerar ett visst program från att använda en version av en sida vid sida-sammansättning till att använda en annan version av samma sammansättning. Du kan använda en programkonfigurationsfil för att omdirigera ett visst program till att använda en version av en sida-vid-sida-sammansättning som skiljer sig från den som definieras i utgivarens konfigurationsfil. Mer information finns i Konfiguration.
Visual C++-bibliotek
I Visual Studio 2005 och Visual Studio 2008 distribuerades omdistribuerbara bibliotek som ATL, MFC, CRT, Standard C++, OpenMP och MSDIA som delade sammansättningar sida vid sida till den interna sammansättningscachen. I den aktuella versionen använder de omdistribuerbara biblioteken central distribution. Som standard skapas alla program som skapas med hjälp av Visual Studio med manifestet inbäddat i den slutliga binärfilen, och manifestet beskriver beroendena för binärfilen i Visual C++-biblioteken. Information om manifestgenerering för C++-program finns i Förstå manifestgenerering för C/C++-program. Ett manifest krävs inte för program som är statiskt länkade till de bibliotek som de använder eller som använder lokal distribution. Mer information om distribution finns i Distribution i Visual C++.
Se även
Skapa C/C++-isolerade program och sammansättningar sida vid sida