Architektur von Add-Ins auf Anwendungsebene

Mit den Office-Entwicklungstools in Visual Studio erstellte Add-Ins besitzen Architekturfeatures, die Stabilität und Sicherheit hervorheben und ein enges Zusammenarbeiten der Add-Ins mit Microsoft Office ermöglichen.In diesem Thema werden die folgenden Aspekte von Add-Ins beschrieben:

  • Add-Ins

  • Komponenten von Add-Ins

  • Verwenden von Add-Ins mit Microsoft Office-Anwendungen

Betrifft: Die Informationen in diesem Thema betreffen Projekte auf Anwendungsebene für Microsoft Office 2013 und Microsoft Office 2010. Weitere Informationen finden Sie unter Verfügbare Funktionen nach Office-Anwendung und Projekttyp.

Allgemeine Informationen zum Erstellen von Add-Ins finden Sie unter Übersicht über die Entwicklung von Office-Projektmappen und Erste Schritte beim Programmieren von Add-Ins auf Anwendungsebene.

Add-Ins

Beim Erstellen eines Add-Ins mit den Office-Entwicklertools in Visual Studio erstellen Sie eine verwaltete Codeassembly, die von einer Microsoft Office-Anwendung geladen wird.Nach dem Laden der Assembly, kann das Add-In auf Ereignisse reagieren, die in der Anwendung ausgelöst werden (z. B. wenn ein Benutzer auf ein Menüelement klickt).Das Add-In kann auch einen Aufruf an das Objektmodell ausführen, um die Anwendung zu automatisieren und zu erweitern, und das Add-In kann jede der Klassen in .NET Framework verwenden.

Die Assembly verwendet die primäre Interopassembly der Anwendung, um mit den COM-Komponenten der Anwendung zu kommunizieren.Weitere Informationen finden Sie unter Primäre Interopassemblys in Office und Übersicht über die Entwicklung von Office-Projektmappen.

Beim Installieren mehrerer Add-Ins für eine Anwendung wird jedes Add-In in eine andere Anwendungsdomäne geladen.So kann kein Add-In, das sich falsch verhält, bewirken, dass andere Add-Ins fehlschlagen.Damit wird auch sichergestellt, dass beim Schließen der Anwendung alle Add-In-Assemblys aus dem Speicher entladen werden.Weitere Informationen zu Anwendungsdomänen finden Sie unter Anwendungsdomänen.

HinweisHinweis

Add-Ins, die mit den Office-Entwicklertools in Visual Studio erstellt werden, sollen nur dann verwendet werden, wenn die Microsoft Office-Hostanwendung von einem Endbenutzer gestartet wird.Wird die Anwendung programmgesteuert gestartet (beispielsweise durch Automatisierung), verhält sich das Add-In unter Umständen nicht so, wie erwartet.

Komponenten von Add-Ins

Obwohl es sich bei der Add-In-Assembly um die Hauptkomponente handelt, gibt es zudem mehrere andere Komponenten, die beeinflussen, wie Microsoft Office-Anwendungen Add-Ins finden und laden.

Bb386298.collapse_all(de-de,VS.110).gifRegistrierungseinträge

Microsoft Office-Anwendungen ermitteln Add-Ins, indem sie nach einem Satz von Registrierungseinträgen suchen.Eine vollständige Liste der von Add-Ins verwendeten Registrierungseinträge finden Sie unter Registrierungseinträge für Add-Ins auf Anwendungsebene.

Beim Erstellen der Lösung erstellt Visual Studio alle erforderlichen Registrierungseinträge auf dem Entwicklungscomputer, sodass Sie das Add-In debuggen und ausführen können.Weitere Informationen finden Sie unter Aktualisieren von Office-Projektmappen.

Beim Bereitstellen der Lösung mit ClickOnce erstellt das vom Veröffentlichungsvorgang generierte Setupprogramm automatisch die Registrierungsschlüssel auf dem Endbenutzercomputer.Weitere Informationen finden Sie unter Bereitstellen einer Office-Lösung mithilfe von ClickOnce.

Bb386298.collapse_all(de-de,VS.110).gifBereitstellungsmanifest und Anwendungsmanifest

Add-Ins verwenden Bereitstellungs- und Anwendungsmanifeste, um die aktuelle Version der Add-In-Assembly zu identifizieren und zu laden.Das Bereitstellungsmanifest verweist auf das aktuelle Anwendungsmanifest.Das Anwendungsmanifest verweist auf die Add-In-Assembly und gibt die Einstiegspunktklasse an, die in der Assembly ausgeführt wird.Weitere Informationen finden Sie unter Anwendungs- und Bereitstellungsmanifeste in Office-Projektmappen.

Bb386298.collapse_all(de-de,VS.110).gifVisual Studio Tools for Office Runtime

Um Add-Ins ausgeführt werden mit den Office Developer Tools in Visual Studio, installierte Endbenutzer, den Computer Visual Studio-Tools für Office-Laufzeit haben müssen. Die Laufzeit umfasst nicht verwaltete Komponenten und einen Satz verwalteter Assemblys.Die nicht verwalteten Komponenten laden die Add-In-Assembly.Die verwalteten Assemblys enthalten das Objektmodell, das der Add-In-Code verwendet, um die Hostanwendung zu automatisieren und zu erweitern.

Weitere Informationen finden Sie unter Übersicht über die Visual Studio Tools for Office-Laufzeit.

Verwenden von Add-Ins mit Microsoft Office-Anwendungen

Wenn ein Benutzer eine Microsoft Office-Anwendung startet, verwendet die Anwendung das Bereitstellungsmanifest und das Anwendungsmanifest, um die aktuelle Version der Add-In-Assembly zu finden und zu laden.In der folgenden Abbildung wird die grundlegende Architektur dieser Add-Ins dargestellt.

Add-In-Architektur

Office 2007-Add-In-Architektur

HinweisHinweis

In Office-Lösungen, die .NET Framework 4 oder .NET Framework 4.5 abzielen, rufen Lösungen das Objektmodell der Hostanwendung mithilfe von PIA-Typinformationen, die in der Projektmappenassembly eingebettet wird, anstatt, in die PIA direkt aufzurufen.Weitere Informationen finden Sie unter Entwerfen und Erstellen von Office-Lösungen.

Bb386298.collapse_all(de-de,VS.110).gifLadevorgang

Die folgenden Schritte werden ausgeführt, wenn ein Benutzer eine Anwendung startet:

  1. Die Anwendung überprüft die Registrierung auf Einträge, die Add-Ins identifizieren, die mit den Office-Entwicklertools in Visual Studio erstellt wurden.

  2. Wenn die Anwendung diese Registrierungseinträge findet, lädt die Anwendung die Datei VSTOEE.dll, die wiederum die Datei VSTOLoader.dll lädt.Diese sind nicht verwaltete DLL, die die Ladeprogrammkomponenten für die Visual Studio 2010 Tools for Office Runtime sind.Weitere Informationen finden Sie unter Übersicht über die Visual Studio Tools for Office-Laufzeit.

  3. VSTOLoader.dll lädt .NET Framework und startet den verwalteten Teil von Visual Studio-Tools für Office-Laufzeit.

  4. Visual Studio-Tools für Office-Laufzeit überprüft die Manifestupdates und lädt die aktuellsten Anwendungs- und Bereitstellungsmanifeste herunter.

  5. Visual Studio-Tools für Office-Laufzeit führt eine Reihe von Sicherheitsüberprüfungen aus.Weitere Informationen finden Sie unter Sichern von Office-Projektmappen.

  6. Wenn das Add-In vertrauenswürdig ist und ausgeführt werden darf, verwendet Visual Studio-Tools für Office-Laufzeit das Bereitstellungsmanifest und das Anwendungsmanifest, um nach Assemblyaktualisierungen zu suchen.Wenn eine neue Version der Assembly verfügbar ist, lädt die Laufzeit die neue Version der Assembly in den ClickOnce-Cache auf dem Clientcomputer.Weitere Informationen finden Sie unter Bereitstellen einer Office-Projektmappe.

  7. Visual Studio-Tools für Office-Laufzeit erstellt eine neue Anwendungsdomäne, in der die Add-In-Assembly geladen wird.

  8. Die Add-In-Assembly wird von Visual Studio-Tools für Office-Laufzeit in die Anwendungsdomäne geladen.

  9. Visual Studio-Tools für Office-Laufzeit ruft die RequestComAddInAutomationService-Methode im Add-In auf, wenn Sie sie überschrieben haben.

    Sie können diese Methode wahlweise überschreiben, um ein Objekt im Add-In für andere Microsoft Office-Projektmappen verfügbar zu machen.Weitere Informationen finden Sie unter Aufrufen von Code in Add-Ins auf Anwendungsebene von anderen Office-Projektmappen.

  10. Visual Studio-Tools für Office-Laufzeit ruft die RequestService-Methode im Add-In auf, wenn Sie sie überschrieben haben.

    Sie können diese Methode wahlweise überschreiben, um ein Microsoft Office-Feature zu erweitern, indem Sie ein Objekt zurückgeben, das eine Erweiterbarkeitsschnittstelle implementiert.Weitere Informationen finden Sie unter Anpassen von Features der Benutzeroberfläche mithilfe von Erweiterungsschnittstellen.

    HinweisHinweis

    Visual Studio-Tools für Office-Laufzeit sendet für jede Erweiterbarkeitsschnittstelle, die von der Hostanwendung unterstützt wird, separate Aufrufe an die RequestService-Methode.Obwohl der erste Aufruf der RequestService-Methode in der Regel vor dem Aufruf der ThisAddIn_Startup-Methode ausgeführt wird, sollte das Add-In keine Annahmen darüber anstellen, wann oder wie oft die RequestService-Methode aufgerufen wird.

  11. Visual Studio-Tools für Office-Laufzeit ruft die ThisAddIn_Startup-Methode im Add-In auf.Diese Methode ist der Standardereignishandler für das Startup-Ereignis.Weitere Informationen finden Sie unter Ereignisse in Office-Projekten.

Siehe auch

Konzepte

Architektur von Anpassungen auf Dokumentebene

Übersicht über die Visual Studio Tools for Office-Laufzeit

Weitere Ressourcen

Architektur von Office-Projektmappen in Visual Studio

Programmieren von Add-Ins auf Anwendungsebene

Entwickeln von Office-Projektmappen

Sichern von Office-Projektmappen

Bereitstellen einer Office-Projektmappe