Übersicht über das Outlook-Objektmodell

Aktualisiert: November 2007

Bei der Entwicklung von Add-Ins für Microsoft Office Outlook können Sie mit den vom Outlook-Objektmodell bereitgestellten Objekten interagieren. Das Outlook-Objektmodell stellt Klassen bereit, die Elemente in der Benutzeroberfläche darstellen. So stellt zum Beispiel die Application-Klasse die gesamte Anwendung dar, während die MAPIFolder-Klasse einen Ordner mit E-Mail-Nachrichten oder anderen Elementen und die MailItem-Klasse eine einzelne E-Mail-Nachricht darstellt.

Dieses Thema enthält eine kurze Übersicht über einige der wichtigsten Klassen im Outlook-Objektmodell. Eine vollständige Dokumentation des Outlook-Objektmodells finden Sie in den MSDN-Abschnitten Outlook 2007 Developer Reference und Welcome to the Microsoft Office Outlook 2003 VBA Language Reference.

Zugreifen auf Objekte in einem Outlook-Projekt

Outlook stellt viele Klassen bereit, mit denen Sie interagieren können. Um das Objektmodell wirksam verwenden zu können, sollten Sie mit den folgenden Klassen der obersten Ebene vertraut sein:

Application-Klasse

Die Application-Klasse repräsentiert die Outlook-Anwendung und befindet sich damit auf der obersten Ebene des Outlook-Objektmodells. Zu den wichtigsten Membern dieser Klasse gehören:

  • Die CreateItem-Methode, die verwendet wird, um ein neues Element zu erstellen, z. B. eine E-Mail-Nachricht, eine Aufgabe oder einen Termin.

  • Die Explorers-Eigenschaft, mit der auf die Fenster zugegriffen wird, in denen in der Outlook-Benutzeroberfläche der Inhalt von Ordnern angezeigt wird.

  • Die Inspectors-Eigenschaft, mit der auf die Fenster zugegriffen wird, in denen der Inhalt eines einzelnen Elements (z. B. einer E-Mail-Nachricht oder einer Besprechungsanfrage) angezeigt wird.

Verwenden Sie zum Aufrufen einer Instanz der Application-Klasse die Application-Eigenschaft der ThisAddin-Klasse.

ThisAddIn-Klasse

Wenn Sie ein neues Add-In-Projekt für Outlook erstellen, erstellt Visual Studio Tools for Office automatisch eine ThisAddIn.vb-Codedatei oder eine ThisAddIn.cs-Codedatei im neuen Projekt. Diese Codedatei definiert eine ThisAddin-Klasse, die von OutlookAddIn erbt. Sie können mit den Schlüsselwörtern Me (in Visual Basic) bzw. this (in C#) in der ThisAddIn-Klasse auf die Member der OutlookAddIn-Klasse zugreifen. Code außerhalb der ThisAddIn-Klasse kann über die statische Globals.ThisAddIn-Eigenschaft auf das ThisAddIn-Objekt zugreifen.

Hinweis:

Um zu verhindern, dass bei der Verwendung von Eigenschaften und Methoden, die vom Outlook-Objektmodellschutz blockiert werden, Sicherheitswarnungen angezeigt werden, rufen Sie die Outlook-Objekte vom ThisAddIn-Objekt ab. Weitere Informationen finden Sie unter Überlegungen zur Sicherheit von Office-Projektmappen.

Explorer-Klasse

Die Explorer-Klasse stellt ein Fenster dar, in dem der Inhalt eines Ordner angezeigt wird, der Elemente wie E-Mail-Nachrichten, Aufgaben oder Termine enthält. Die Explorer-Klasse enthält Methoden und Eigenschaften zum Modifizieren des Fensters sowie Ereignisse, die bei einer Änderung des Fensters ausgelöst werden.

Zum Abrufen eines Explorer-Objekts haben Sie folgende Möglichkeiten:

Inspector-Klasse

Die Inspector-Klasse stellt ein Fenster dar, in dem ein einzelnes Element angezeigt wird, z. B. eine E-Mail-Nachricht, eine Aufgabe oder ein Termin. Die Inspector-Klasse enthält Methoden und Eigenschaften zum Modifizieren des Fensters sowie Ereignisse, die bei einer Änderung des Fensters ausgelöst werden.

Zum Abrufen eines Inspector-Objekts haben Sie folgende Möglichkeiten:

MAPIFolder-Klasse

Die MAPIFolder-Klasse stellt einen Ordner dar, der E-Mail-Nachrichten, Kontakte, Aufgaben und andere Elemente enthält. Outlook stellt 16 MAPIFolder-Standardobjekte bereit.

Die MAPIFolder-Standardobjekte werden durch die Werte der OlDefaultFolders-Enumeration definiert. Beispiel:

T:Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox entspricht dem Ordner Posteingang in Outlook.

Ein Beispiel, das zeigt, wie Sie auf einen Standard-MAPIFolder zugreifen und einen neuen MAPIFolder erstellen, finden Sie unter Gewusst wie: Erstellen von benutzerdefinierten Ordnerelementen.

MailItem-Klasse

Die MailItem-Klasse stellt eine E-Mail-Nachricht dar. MailItem-Objekte befinden sich i. d. R. in Ordnern wie Posteingang, Gesendete Objekte und Postausgang. MailItem macht Eigenschaften und Methoden zum Erstellen und Senden von E-Mail-Nachrichten verfügbar.

Ein Beispiel für das Erstellen einer E-Mail-Nachricht finden Sie unter Gewusst wie: Erstellen eines E-Mail-Elements.

AppointmentItem-Klasse

Die AppointmentItem-Klasse stellt eine Besprechung, einen einmaligen Termin, einen wiederkehrenden Termin oder eine wiederkehrende Besprechung im Ordner Kalender dar. Die AppointmentItem-Klasse enthält Methoden zum Durchführen von Aktionen, z. B. zum Antworten auf Besprechungsanfragen oder zum Weiterleiten von Besprechungsanfragen, sowie Eigenschaften, mit denen Besprechungsdetails wie Ort und Zeit angegeben werden.

Ein Beispiel für das Erstellen eines Termins finden Sie unter Gewusst wie: Erstellen einer Besprechungsanfrage.

TaskItem-Klasse

Die TaskItem-Klasse stellt eine innerhalb eines angegebenen Zeitrahmens zu erledigende Aufgabe dar. TaskItem-Objekte befinden sich im Ordner Aufgaben.

Verwenden Sie für das Erstellen einer Aufgabe die CreateItem-Methode der Application-Klasse, und übergeben Sie für den Parameter den Wert olTaskItem.

ContactItem-Klasse

Die ContactItem-Klasse stellt einen Kontakt im Ordner Kontakte dar. ContactItem-Objekte enthalten eine Reihe von Kontaktinformationen für die entsprechenden Personen, z. B. Adressen, E-Mail-Adressen und Telefonnummern.

Ein Beispiel für das Erstellen eines neuen Kontakts finden Sie unter Gewusst wie: Hinzufügen eines Eintrags zu Outlook-Kontakten. Ein Beispiel, das zeigt, wie Sie nach einem vorhandenen Kontakt suchen, finden Sie unter Gewusst wie: Suchen eines bestimmten Kontakts.

Verwenden der Dokumentation für das Outlook-Objektmodell

Weitere Informationen zu den Klassen, die Sie im Outlook-Objektmodell verwenden können, finden Sie in der folgenden Dokumentation:

Der erste Link enthält Informationen zu den Klassen und die Schnittstellen in der primären Interopassembly für Outlook. Die anderen Links bieten Informationen zum Outlook-Objektmodell, wenn es für VBA (Visual Basic for Applications)-Code verfügbar gemacht wird. Jeder Dokumentationssatz hat Vorteile und Nachteile für Entwickler, die Visual Studio Tools for Office verwenden.

Referenz für die primäre Interopassembly

Diese Dokumentation beschreibt alle Typen in der primären Outlook-Interopassembly, die Sie in Visual Studio Tools for Office-Projekten verwenden können:

  • Sie beschreibt die Typen in der primären Interopassembly für Outlook 2007. Wenn Sie daher ein Outlook 2003-Add-In entwickeln, können Sie einige der Klassen und Member in dieser Dokumentation nicht verwenden. Beschreibungen der Typen und Member, die für Outlook 2003 verfügbar sind, finden Sie in der Microsoft Office Outlook 2003 VBA Language Reference.

  • Sie stellt derzeit keine Codebeispiele bereit.

VBA-Referenz

Alle Objekte und Member in der VBA-Referenz entsprechen Klassen und Membern in der primären Interopassembly, die Sie in Visual Studio Tools for Office-Projekten verwenden. Zum Beispiel entspricht das Inspector-Objekt in der Outlook-VBA-Dokumentation der Microsoft.Office.Interop.Outlook.Inspector-Klasse in der primären Interopassembly.

Die VBA-Referenz hat die folgenden Vorteile:

  • Sie stellt Codebeispiele für die meisten Member bereit.

Die VBA-Referenz hat die folgenden Nachteile:

  • Sie stellt nur Syntax und Codebeispiele für VBA bereit. Um die Codebeispiele in einem Visual Studio Tools for Office-Projekt zu verwenden, müssen Sie den VBA-Code in Visual Basic oder Visual C# übersetzen.

Zusätzliche Typen in primären Interopassemblys

Die primären Interopassemblys enthalten viele Typen, die VBA nicht zur Verfügung stehen. Diese zusätzlichen Typen helfen dabei, Objekte im COM-basierten Objektmodell von Outlook in verwalteten Code zu übersetzen. Sie sind nicht für die direkte Verwendung im Code vorgesehen.

Weitere Informationen finden Sie unter Architektur der Outlook PIA.

Siehe auch

Aufgaben

Gewusst wie: Hinzufügen von Windows Forms zu Outlook-Projektmappen

Gewusst wie: Hinzufügen von benutzerdefinierten Menüs und Menüelementen zu Outlook

Gewusst wie: Hinzufügen von benutzerdefinierten Symbolleisten und Symbolleistenelementen zu Outlook

Gewusst wie: Hinzufügen benutzerdefinierter Symbole zu Symbolleisten- und Menüelementen

Gewusst wie: Beibehalten von Positionsinformationen für benutzerdefinierte Symbolleisten zwischen Outlook-Sitzungen

Gewusst wie: Lesen von Daten aus einem benutzerdefinierten Feld eines Elements

Gewusst wie: Bestimmen des übergeordneten Ordners nicht gespeicherter Elemente

Gewusst wie: Bestimmen des aktuellen Outlook-Elements

Konzepte

Überlegungen zur Sicherheit von Office-Projektmappen

Übersicht über die Entwicklung von Office-Projektmappen

Arbeiten mit Kontaktelementen

Arbeiten mit E-Mail-Elementen

Arbeiten mit Ordnern

Arbeiten mit Kalenderelementen