Architektura doplňků VSTO
Doplňky VSTO vytvořené pomocí vývojářských nástrojů Office v sadě Visual Studio mají funkce architektury, které zvýrazňují stabilitu a zabezpečení a umožňují jim úzce spolupracovat s systém Microsoft Office. Toto téma popisuje následující aspekty doplňků VSTO:
Jak doplňky VSTO fungují s aplikacemi systém Microsoft Office
Platí pro: Informace v tomto tématu platí pro projekty doplňků VSTO. Další informace naleznete v tématu Funkce dostupné aplikace Office lication a typu projektu.
Obecné informace o vytváření doplňků VSTO najdete v tématu Přehled vývoje řešení Office (VSTO) a Začínáme s programováním doplňků VSTO.
Principy doplňků VSTO
Když k sestavení doplňku VSTO použijete vývojářské nástroje Office v sadě Visual Studio, vytvoříte sestavení spravovaného kódu načtené aplikací systém Microsoft Office. Po načtení sestavení může doplněk VSTO reagovat na události, které jsou vyvolány v aplikaci (například když uživatel klikne na položku nabídky). Doplněk VSTO může také volat do objektového modelu pro automatizaci a rozšíření aplikace a může používat libovolnou z tříd v rozhraní .NET Framework.
Sestavení komunikuje s komponentami modelu COM aplikace prostřednictvím primárního sestavení zprostředkovatele komunikace aplikace. Další informace najdete v tématu Základní sestavení vzájemné spolupráce a přehled vývoje řešení Office (VSTO).
Pokud je pro aplikaci nainstalovaných více doplňků VSTO, každý doplněk VSTO se načte v jiné doméně aplikace. To znamená, že jeden doplněk VSTO, který se chová nesprávně, nemůže způsobit selhání jiných doplňků VSTO. Pomáhá také zajistit, aby se při zavření aplikace zrušila všechna sestavení doplňku VSTO z paměti. Další informace o doménách aplikace naleznete v tématu Domény aplikace.
Poznámka:
Doplňky VSTO, které vytvoříte pomocí vývojářských nástrojů Office v sadě Visual Studio, jsou navržené tak, aby se používaly jenom v případech, kdy koncový uživatel spustí hostitelskou systém Microsoft Office aplikaci. Pokud je aplikace spuštěna programově (například pomocí automatizace), doplněk VSTO nemusí fungovat podle očekávání.
Komponenty doplňků VSTO
I když je sestavení doplňku VSTO hlavní komponentou, existuje několik dalších komponent, které hrají důležitou roli v tom, jak systém Microsoft Office aplikace zjišťovat a načítat doplňky VSTO.
Položky registru
systém Microsoft Office aplikace vyhledávají doplňky VSTO vyhledáním sady položek registru. Úplný seznam položek registru používaných doplňky VSTO naleznete v tématu Položky registru pro doplňky VSTO.
Při sestavování řešení vytvoří Visual Studio všechny požadované položky registru na vývojovém počítači, abyste mohli ladit a spustit doplněk VSTO. Další informace najdete v tématu Sestavení řešení Office.
Pokud k nasazení řešení použijete ClickOnce, instalační program vygenerovaný procesem publikování automaticky vytvoří klíče registru na počítači koncového uživatele. Další informace naleznete v tématu Nasazení řešení Office pomocí ClickOnce.
Manifest nasazení a manifest aplikace
Doplňky VSTO používají manifesty nasazení a manifesty aplikací k identifikaci a načtení nejnovější verze sestavení doplňku VSTO. Manifest nasazení odkazuje na aktuální manifest aplikace. Manifest aplikace odkazuje na sestavení doplňku VSTO a určuje třídu vstupního bodu, která se má spustit v sestavení. Další informace najdete v tématu Manifesty aplikací a nasazení v řešeních Office.
Visual Studio Tools for Office Runtime
Pokud chcete spouštět doplňky VSTO vytvořené pomocí vývojářských nástrojů Office v sadě Visual Studio, musí mít počítače koncových uživatelů nainstalované visual Studio Tools for Office runtime. Modul runtime zahrnuje nespravované komponenty a sadu spravovaných sestavení. Nespravované komponenty načítají sestavení doplňku VSTO. Spravovaná sestavení poskytují objektový model, který váš kód doplňku VSTO používá k automatizaci a rozšíření hostitelské aplikace.
Další informace naleznete v tématu Visual Studio Tools for Office runtime přehled.
Jak doplňky VSTO fungují s aplikacemi systém Microsoft Office
Když uživatel spustí systém Microsoft Office aplikaci, aplikace pomocí manifestu nasazení a manifestu aplikace vyhledá a načte nejnovější verzi sestavení doplňku VSTO. Následující obrázek znázorňuje základní architekturu těchto doplňků VSTO.
Poznámka:
V řešeních Office, která cílí na rozhraní .NET Framework 4 nebo .NET Framework 4.5, řešení volají objektový model hostitelské aplikace pomocí informací o typu PIA, které jsou vloženy do sestavení řešení, místo volání do PIA přímo. Další informace najdete v tématu Návrh a vytvoření řešení Office.
Proces načítání
K následujícím krokům dochází při spuštění aplikace uživatelem:
Aplikace zkontroluje položky registru, které identifikují doplňky VSTO vytvořené pomocí vývojářských nástrojů Office v sadě Visual Studio.
Pokud aplikace najde tyto položky registru, aplikace načte VSTOEE.dll, která načte VSTOLoader.dll. Jedná se o nespravované knihovny DLL, které jsou komponentami zavaděče pro Visual Studio 2010 Tools for Office Runtime. Další informace naleznete v tématu Visual Studio Tools for Office runtime přehled.
VSTOLoader.dll načte rozhraní .NET Framework a spustí spravovanou část sady Visual Studio Tools for Office runtime .
Visual Studio Tools for Office runtime kontroluje aktualizace manifestu a stáhne nejnovější manifesty aplikací a nasazení.
Visual Studio Tools for Office runtime provádí řadu kontrol zabezpečení. Další informace najdete v tématu Zabezpečení řešení Office.
Pokud je doplněk VSTO důvěryhodný ke spuštění, visual Studio Tools for Office runtime používá manifest nasazení a manifest aplikace ke kontrole aktualizací sestavení. Pokud je k dispozici nová verze sestavení, modul runtime stáhne novou verzi sestavení do mezipaměti ClickOnce v klientském počítači. Další informace najdete v tématu Nasazení řešení Office.
Visual Studio Tools for Office runtime vytvoří novou doménu aplikace, do které se má načíst sestavení doplňku VSTO.
Visual Studio Tools for Office runtime načte sestavení doplňku VSTO do domény aplikace.
Visual Studio Tools for Office runtime volá metodu RequestComAddInAutomationService v doplňku VSTO, pokud jste ji přepsli.
Volitelně můžete tuto metodu přepsat tak, aby se objekt v doplňku VSTO zpřístupnil jiným systém Microsoft Office řešením. Další informace najdete v tématu Volání kódu v doplňkech VSTO z jiných řešení Office.
Visual Studio Tools for Office runtime volá metodu RequestService v doplňku VSTO, pokud jste ji přepsli.
Volitelně můžete tuto metodu přepsat, chcete-li rozšířit funkci systém Microsoft Office vrácením objektu, který implementuje rozhraní rozšiřitelnosti. Další informace naleznete v tématu Přizpůsobení funkcí uživatelského rozhraní pomocí rozhraní rozšiřitelnosti.
Poznámka:
Visual Studio Tools for Office runtime provádí samostatná volání RequestService metody pro každé rozhraní rozšiřitelnosti, které je podporováno hostitelskou aplikací. I když první volání RequestService metody obvykle nastane před voláním
ThisAddIn_Startup
metody, doplněk VSTO by neměl provádět žádné předpoklady o tom, kdy RequestService bude volána metoda nebo kolikrát bude volána.Visual Studio Tools for Office runtime volá metodu
ThisAddIn_Startup
v doplňku VSTO. Tato metoda je výchozí obslužnou rutinou Startup události události. Další informace naleznete v tématu Události v projektech Office.