WrapCompressedRTFStream

Gilt für: Outlook 2013 | Outlook 2016

Erstellt einen Textstream im unkomprimierten Rich-Text-Format (RTF) aus dem komprimierten Format, das in der eigenschaft PR_RTF_COMPRESSED (PidTagRtfCompressed) verwendet wird.

Eigenschaft Wert
Headerdatei
Mapidefs.h
Implementiert von:
MAPI
Aufgerufen von:
Clientanwendungen
HRESULT WrapCompressedRTFStream(
  LPSTREAM lpCompressedRTFStream,
  ULONG ulflags,
  LPSTREAM FAR * lpUncompressedRTFStream
);

Parameter

lpCompressedRTFStream

[in] Zeiger auf einen Datenstrom, der in der PR_RTF_COMPRESSED-Eigenschaft einer Nachricht geöffnet wird.

ulFlags

[in] Bitmaske von Optionsflags für die Funktion. Die folgenden Flags können festgelegt werden:

MAPI_MODIFY

Gibt an, ob der Client die zurückgegebene umschlossene Streamschnittstelle lesen oder schreiben möchte.

STORE_UNCOMPRESSED_RTF

Nicht komprimierte RTF sollte in den Stream geschrieben werden, auf den lpCompressedRTFStream verweist.

lpUncompressedRTFStream

[out] Zeiger auf den Speicherort, an dem WrapCompressedRTFStream einen Stream für die nicht komprimierte RTF zurückgibt.

Rückgabewert

S_OK

Der Aufruf erfolgreich ausgef�hrt und der erwartete Wert oder Werte zur�ckgegeben hat.

Hinweise

Wenn das MAPI_MODIFY-Flag im ulFlags-Parameter übergeben wird, muss der lpCompressedRTFStream-Parameter bereits zum Lesen und Schreiben geöffnet sein. Neuer, nicht komprimierter RTF-Text sollte in die stream-Schnittstelle geschrieben werden, die in lpUncompressedRTFStream zurückgegeben wird. Da es nicht möglich ist, den vorhandenen Stream anzufügen, muss der gesamte Nachrichtentext geschrieben werden.

Wenn null im ulFlags-Parameter übergeben wird, kann lpCompressedRTFStream schreibgeschützt geöffnet werden. Nur der gesamte Nachrichtentext kann aus der in lpUncompressedRTFStream zurückgegebenen Streamschnittstelle gelesen werden. Es ist nicht möglich, ab der Mitte des Datenstroms zu suchen.

WrapCompressedRTFStream geht davon aus, dass der Zeiger des komprimierten Datenstroms auf den Anfang des Datenstroms festgelegt ist. Bestimmte OLE IStream-Methoden werden vom zurückgegebenen nicht komprimierten Stream nicht unterstützt. Dazu gehören IStream::Clone, IStream::LockRegion, IStream::Revert, IStream::Seek, IStream::SetSize, IStream::Stat und IStream::UnlockRegion. Um in den gesamten Stream zu kopieren, ist eine Lese-/Schreibschleife erforderlich.

Da der Client neue RTF im unkomprimierten Format schreibt, sollte er WrapCompressedRTFStream verwenden, anstatt direkt in den Stream zu schreiben. RTF-fähige Clients sollten nach dem STORE_UNCOMPRESSED_RTF-Flag in der eigenschaft PR_STORE_SUPPORT_MASK (PidTagStoreSupportMask) suchen und es an WrapCompressed RTFStream übergeben, wenn es festgelegt ist.

Siehe auch

RTFSync