MAPI-Nachrichtenklassen
Gilt für: Outlook 2013 | Outlook 2016
Jede Nachricht verfügt über eine Nachrichtenklasseneigenschaft , PR_MESSAGE_CLASS (PidTagMessageClass), die den Typ, den Zweck oder den Inhalt der Nachricht identifiziert. PR_MESSAGE_CLASS ist eine erforderliche Eigenschaft für alle neuen Nachrichten. Die -Klasse einer Nachricht bestimmt das Formular, das zum Präsentieren der Nachricht für den Benutzer und den Ordner zum Platzieren eingehender Nachrichten verwendet wird.
Nachrichtenklassen sind Zeichenfolgen, bei denen die Groß-/Kleinschreibung beachtet wird, die ASCII-Zeichen 32 bis 127 enthalten und durch Punkte getrennt sind, aber sie können nicht mit einem Punkt enden. Jede Zeichenfolge stellt eine Ebene von Unterklassen dar, und die Anzahl der zulässigen Ebenen ist nicht begrenzt.
Beispielsweise fallen die meisten Nachrichten, die Clientanwendungen senden und empfangen, in die IPM-Nachrichtenklasse , eine breite Kategorie, die alle zwischenmenschlichen Nachrichten beschreibt (d. a. Nachrichten, die von einem menschlichen Benutzer gelesen werden sollen, anstatt programmgesteuert von einem Computer). Nachrichtenspeicheranbieter beschreiben eine IPM-Nachricht genauer, indem sie eine IPM-Unterklasse erstellen. Die IPM-Unterklasse erbt die Eigenschaften der IPM-Nachrichtenklasse . Unterklassen der IPM-Klasse werden benannt, indem andere Zeichenfolgen mit dem IPM-Bezeichner verkettet werden, z . B. IPM. Hinweis , um eine Notiznachricht und IPM zu beschreiben. Kontakt zum Beschreiben einer Kontaktnachricht.
Um die Anzeige und Verwaltung von IPM-Nachrichten zu verarbeiten, können Clients ein Standardformular verwenden, das MAPI bereitstellt. Um die Anzeige und Verwaltung neuer Nachrichtenklassen zu verarbeiten, haben Sie als Clientanwendungsentwickler zwei Optionen:
Sie können ein neues Formular erstellen, indem Sie den Satz von MAPI-definierten Formularschnittstellen verwenden, die ein Standardclient verwenden kann.
Sie können Ihren eigenen Client schreiben, indem Sie eine vollständige eigenständige Anwendung implementieren.
Obwohl Clients die PR_MESSAGE_CLASS-Eigenschaft für jede ausgehende Nachricht auf eine Unterklasse von IPM oder IPC festlegen sollten, ist der Nachrichtenspeicheranbieter letztendlich dafür verantwortlich. Wenn ein Client eine Nachricht sendet, ohne seine Nachrichtenklasse festzulegen, legt der Nachrichtenspeicheranbieter sie daher auf den entsprechenden Standardwert für den entsprechenden Clienttyp fest. Die Standardnachrichtenklasse für zwischenmenschliche Messagingclients ist IPM. Die Standardnachrichtenklasse für Clients für die prozessübergreifende Kommunikation ist IPC.
Nachrichtenklassen haben eine Längenbeschränkung von 255 Zeichen. Nachrichtenklassen sollten jedoch 127 Zeichen nicht überschreiten, um die in Berichten verwendeten Nachrichtenklassen zu unterstützen. Berichtsnachrichtenklassen basieren auf der Klasse der ursprünglichen Nachricht mit zwei Ergänzungen: einem Präfix und einem Suffix. Das Präfix REPORT gibt an, dass es sich bei der Nachricht um einen Bericht handelt, und das Suffix gibt den Typ des Berichts an: DR (Übermittlungsbericht), NDR (nicht verfügbarer Bericht), IPNRN (Bericht lesen) oder IPNNRN (nicht gelesener Bericht). Beachten Sie, dass diese Längenbeschränkungen in Zeichen angegeben sind. Auf Plattformen, die einen Doppelbytezeichensatz verwenden, kann die tatsächliche Byteanzahl höher sein.
Nachrichtenspeicheranbieter sollten MAPI_E_INVALID_PARAMETER aus ihren IMPLEMENTIERUNGen der IMAPIProp::SetProps-Methode zurückgeben, wenn ein Client versucht, eine Zeichenfolge zuzuweisen, die den zulässigen Grenzwert für ihre Nachrichtenklasse überschreitet.