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.
VSTO-tillägg som skapats med hjälp av Office-utvecklarverktygen i Visual Studio har arkitektoniska funktioner som betonar stabilitet och säkerhet och gör det möjligt för dem att arbeta nära Microsoft Office. I det här avsnittet beskrivs följande aspekter av VSTO-tillägg:
Så här fungerar VSTO-tillägg med Microsoft Office-program
Gäller för: Informationen i det här avsnittet gäller för VSTO-tilläggsprojekt. Mer information finns i Funktioner som är tillgängliga efter Office-program och projekttyp.
Allmän information om hur du skapar VSTO-tillägg finns i Översikt över Utveckling av Office-lösningar (VSTO) och Kom igång med att programmera VSTO-tillägg.
Förstå VSTO-tillägg
När du använder Office-utvecklarverktygen i Visual Studio för att skapa ett VSTO-tillägg skapar du en hanterad kodsammansättning som läses in av ett Microsoft Office-program. När sammansättningen har lästs in kan VSTO-tillägget svara på händelser som genereras i programmet (till exempel när en användare klickar på ett menyalternativ). VSTO-tillägget kan också anropa till objektmodellen för att automatisera och utöka programmet, och det kan använda någon av klasserna i .NET Framework.
Sammansättningen kommunicerar med programmets COM-komponenter via programmets primära interop-sammansättning. Mer information finns i Office primary interop assemblies och Office solutions development overview (VSTO).
Om flera VSTO-tillägg installeras för ett program läses varje VSTO-tillägg in i en annan programdomän. Det innebär att ett VSTO-tillägg som beter sig felaktigt inte kan orsaka att andra VSTO-tillägg misslyckas. Det hjälper också till att se till att alla VSTO-tilläggssammansättningar tas bort från minnet när programmet stängs. Mer information om programdomäner finns i Programdomäner.
Anmärkning
VSTO-tillägg som du skapar med hjälp av Office-utvecklarverktygen i Visual Studio är utformade för att endast användas när värdprogrammet för Microsoft Office startas av en slutanvändare. Om programmet startas programmatiskt (till exempel med automation) kanske VSTO-tillägget inte fungerar som förväntat.
Komponenter i VSTO-tillägg
Även om VSTO-tillägget är huvudkomponenten finns det flera andra komponenter som spelar en viktig roll i hur Microsoft Office-program identifierar och läser in VSTO-tillägg.
Registerposter
Microsoft Office-program identifierar VSTO-tillägg genom att leta efter en uppsättning registerposter. En fullständig lista över de registerposter som används av VSTO-tillägg finns i Registerposter för VSTO-tillägg.
När du skapar din lösning skapar Visual Studio alla nödvändiga registerposter på utvecklingsdatorn så att du kan felsöka och köra ditt VSTO-tillägg. Mer information finns i Skapa Office-lösningar.
Om du använder ClickOnce för att distribuera lösningen skapar installationsprogrammet som genereras av publiceringsprocessen automatiskt registernycklarna på slutanvändarens dator. Mer information finns i Distribuera en Office-lösning med hjälp av ClickOnce.
Distributionsmanifest och programmanifest
VSTO-tillägg använder distributionsmanifest och programmanifest för att identifiera och läsa in den senaste versionen av VSTO-tilläggssammansättningen. Distributionsmanifestet pekar på det aktuella programmanifestet. Programmanifestet pekar på VSTO-tilläggssammansättningen och anger vilken startpunktsklass som ska köras i sammansättningen. Mer information finns i Program- och distributionsmanifest i Office-lösningar.
Visual Studio Tools för Office Runtime
Om du vill köra VSTO-tillägg som skapas med hjälp av Office-utvecklarverktygen i Visual Studio måste slutanvändardatorerna ha Visual Studio Tools för Office-körning installerat. Körtiden inkluderar ohanterade komponenter och en uppsättning hanterade assemblies. De ohanterade komponenterna läser in VSTO-tillägget. De hanterade sammansättningarna tillhandahåller den objektmodell som din VSTO-tilläggskod använder för att automatisera och utöka värdprogrammet.
Mer information finns i Översikt över Visual Studio Tools for Office-körtid.
Så här fungerar VSTO-tillägg med Microsoft Office-program
När en användare startar ett Microsoft Office-program använder programmet distributionsmanifestet och programmanifestet för att hitta och läsa in den senaste versionen av VSTO-tilläggssammansättningen. Följande bild visar den grundläggande arkitekturen för dessa VSTO-tillägg.
Anmärkning
I Office-lösningar som riktar sig mot .NET Framework 4 eller .NET Framework 4.5 anropar lösningar objektmodellen för värdprogrammet med hjälp av PIA-typinformation som är inbäddad i lösningssammansättningen i stället för att anropa till PIA direkt. Mer information finns i Designa och skapa Office-lösningar.
Inläsningsprocess
Följande steg inträffar när en användare startar ett program:
Programmet kontrollerar registret efter poster som identifierar VSTO-tillägg som har skapats med hjälp av Office-utvecklarverktygen i Visual Studio.
Om programmet hittar dessa registerposter laddar programmet VSTOEE.dll, som laddar VSTOLoader.dll. Det här är ohanterade DLL:er som är inläsningskomponenterna för Visual Studio 2010 Tools for Office Runtime. Mer information finns i Översikt över Visual Studio Tools for Office-körtid.
VSTOLoader.dll läser in .NET Framework och startar den hanterade delen av Visual Studio Tools for Office-körningen .
Visual Studio Tools för Office-körning söker efter manifestuppdateringar och laddar ned de senaste program- och distributionsmanifesten.
Körtidsmiljön för Visual Studio Tools for Office utför flera säkerhetskontroller. Mer information finns i Säkra Office-lösningar.
Om VSTO-tillägget är betrott att köras använder Visual Studio Tools for Office-körningen distributionsmanifestet och programmanifestet för att söka efter sammansättningsuppdateringar. Om en ny version av sammansättningen är tillgänglig laddar körningen ned den nya versionen av sammansättningen till ClickOnce-cachen på klientdatorn. Mer information finns i Distribuera en Office-lösning.
Visual Studio Tools for Office-körningsmiljön skapar en ny applikationsdomän som ska ladda VSTO-tilläggets assembly.
Visual Studio Tools for Office-runtime laddar VSTO-tilläggssammansättningen i programdomänen.
Körningen av Visual Studio Tools for Office anropar metoden RequestComAddInAutomationService i ditt VSTO-tillägg om du har åsidosatt den.
Du kan också åsidosätta den här metoden för att exponera ett objekt i ditt VSTO-tillägg för andra Microsoft Office-lösningar. För mer information, se Anropa kod i VSTO-tillägg från andra Office-lösningar.
Visual Studio Tools för Office-runtime anropar RequestService-metoden i ditt VSTO-tillägg om du har överskridit den.
Du kan också åsidosätta den här metoden för att utöka en Microsoft Office-funktion genom att returnera ett objekt som implementerar ett utökningsgränssnitt. Mer information finns i Anpassa gränssnittsfunktioner med hjälp av utökningsbarhetsgränssnitt.
Anmärkning
Visual Studio Tools for Office-körningen gör separata anrop till RequestService metoden för varje utökningsgränssnitt som stöds av värdprogrammet. Även om det första anropet RequestService till metoden vanligtvis sker före anropet
ThisAddIn_Startuptill metoden, bör vsto-tillägget inte göra några antaganden om när RequestService metoden anropas eller hur många gånger den kommer att anropas.Visual Studio Tools för Office-runtime anropar metoden
ThisAddIn_Startupi ditt VSTO-tillägg. Den här metoden är standardhändelsehanteraren för Startup händelsen. Mer information finns i Händelser i Office-projekt.