Anlagentabellen
Gilt für: Outlook 2013 | Outlook 2016
Eine Anlagetabelle enthält Informationen zu allen Anlageobjekten, die einer gesendeten Nachricht oder einer Nachricht in der Zusammensetzung zugeordnet sind.
Nur Anlagen, die über einen Aufruf der IMAPIProp::SaveChanges-Methode der Nachricht gespeichert wurden, sind in der Tabelle enthalten. Anlagentabellen werden von Nachrichtenspeicheranbietern implementiert und von Clientanwendungen und Transportanbietern verwendet.
Auf eine Anlagentabelle kann zugegriffen werden, indem eine der folgenden Aufrufe aufgerufen wird:
IMAPIProp::OpenProperty, das die eigenschaft PR_MESSAGE_ATTACHMENTS (PidTagMessageAttachments) anfordert.
Anlagentabellen sind dynamisch.
Nachrichtenspeicheranbieter müssen die Sortierung ihrer Anlagentabellen nicht unterstützen. Wenn die Sortierung nicht unterstützt wird, muss die Tabelle in der Reihenfolge nach Renderingposition dargestellt werden – die eigenschaft PR_RENDERING_POSITION (PidTagRenderingPosition).
Nachrichtenspeicheranbieter müssen auch keine Einschränkungen für ihre Anlagentabellen unterstützen. Anbieter, die keine Einschränkungen unterstützen, geben MAPI_E_NO_SUPPORT aus ihren Implementierungen von IMAPITable::Restrict und IMAPITable::FindRow zurück.
Anlagetabellen können klein sein; Der erforderliche Spaltensatz enthält nur vier Spalten:
PR_ATTACH_NUM (PidTagAttachNumber)
PR_INSTANCE_KEY (PidTagInstanceKey)
PR_RECORD_KEY (PidTagRecordKey)
PR_RENDERING_POSITION
PR_ATTACH_NUM ist nicht übersetzbar und enthält einen Wert zum eindeutigen Identifizieren einer Anlage innerhalb einer Nachricht. Diese Eigenschaft wird häufig als Index in die Zeilen der Tabelle verwendet. PR_ATTACH_NUM hat eine kurze Lebensdauer; Sie ist nur gültig, wenn die Nachricht, die die Anlage enthält, geöffnet ist. Der Wert bleibt garantiert konstant, solange die Anlagetabelle geöffnet ist.
PR_INSTANCE_KEY ist in fast jeder Tabelle erforderlich. Es wird verwendet, um eine bestimmte Zeile eindeutig zu identifizieren.
PR_RECORD_KEY wird häufig verwendet, um ein Objekt zu Vergleichszwecken eindeutig zu identifizieren. Im Gegensatz zu PR_ATTACH_NUM verfügt PR_RECORD_KEY über denselben Bereich wie eine Langzeiteintrags-ID. Sie bleibt auch nach dem Schließen und erneuten Öffnen der Nachricht verfügbar und gültig. Weitere Informationen zur Verwendung von Datensatzschlüsseln in MAPI finden Sie unter MAPI-Eintrag und Suchschlüssel.
PR_RENDERING_POSITION gibt an, wie eine Anlage in einer Rich-Text-Nachricht angezeigt werden soll. Es kann auf einen Offset in Zeichen festgelegt werden, wobei das erste Zeichen des Nachrichteninhalts, das in der PR_BODY (PidTagBody)-Eigenschaft gespeichert ist, 0 oder auf -1 (0xFFFFFFFF) versetzt wird, was angibt, dass die Anlage überhaupt nicht innerhalb des Nachrichtentexts gerendert werden soll. Das Festlegen PR_RENDERING_POSITION ist ebenfalls eine Option.
Wenn eine Anlagetabelle nach Renderingposition sortiert wird, behandelt der Nachrichtenspeicheranbieter sie als signierten Wert (PT_LONG). Daher werden Anlagen mit Renderingpositionen von -1 vor Anlagen mit Renderingpositionen sortiert, die gültige Offsets widerspiegeln.
Weitere Informationen zum Rendern einer Anlage in einer Nur-Text-Nachricht finden Sie unter Rendern einer Anlage in Nur-Text.
Informationen zum Rendern einer Anlage in formatiertem Text wie rich text Format (RTF) finden Sie unter Rendern einer Anlage in RTF-Text.
Einige der Eigenschaften von Nachrichtenspeicheranbietern sind in der Regel in einer Anlagentabelle enthalten, da sie einfach zu berechnen oder abzurufen sind:
Eigenschaft | ... |
---|---|
PR_ATTACH_ENCODING (PidTagAttachEncoding) |
PR_ATTACH_EXTENSION (PidTagAttachExtension) |
PR_ATTACH_FILENAME (PidTagAttachFilename) |
PR_ATTACH_LONG_FILENAME (PidTagAttachLongFilename) |
PR_ATTACH_PATHNAME (PidTagAttachPathname) |
PR_ATTACH_LONG_PATHNAME (PidTagAttachLongPathname) |
PR_ATTACH_METHOD (PidTagAttachMethod) |
PR_ATTACH_TAG (PidTagAttachTag) |
PR_CREATION_TIME (PidTagCreationTime) |
PR_ATTACH_TRANSPORT_NAME (PidTagAttachTransportName) |
PR_DISPLAY_NAME (PidTagDisplayName) |
PR_LAST_MODIFICATION_TIME (PidTagLastModificationTime) |