PRB: RichEdit Control Doesn't Save REO_* Flags

ID: Q135987

The information in this article applies to:

SYMPTOMS

A program can embed an OLE object in a RichEdit control by using one of the REO_* flags (for example, REO_BELOWBASELINE) to change the standard attributes for the embedded object. However, when the file is saved by using the EM_STREAMOUT message and read back into the control by using the EM_STREAMIN message, the REO_* flags are not applied to the object.

CAUSE

The RichEdit control does not save the REO_* flags when it writes the object to a file.

WORKAROUND

To work around this behavior, have your program handle saving the OLE objects contained in the RichEdit control to disk manually. Then the program can have the RichEdit control save the rest of the contents without the OLE objects by sending the EM_STREAMOUT message to the RichEdit control with the SF_RTFNOOBJS flag. By specifying the SF_RTFNOOBJS flag, the RichEdit control will leave a space character where the object was, so it is important that your program save the position of the OLE objects as well as the actual objects.

STATUS

This behavior is by design.

Additional query words: RTF Edit

Keywords          : kbCtrl kbNTOS351 kbNTOS400 kbWinOS2000 kbRichEdit kbGrpUser kbWinOS95 kbWinOS98 
Issue type        : kbprb

Last Reviewed: December 26, 1998