EM_STREAMOUT消息

使 Rich edit 控件将其内容传递给应用程序定义的 EditStreamCallback 回调函数。 然后,回调函数可以将数据流写入文件或它选择的任何其他位置。

参数

wParam

指定数据格式和替换选项。

此值必须是下列值之一。

含义
SF_RTF
Rtf。
SF_RTFNOOBJS
使用空格代替 COM 对象的 RTF。
SF_TEXT
使用空格代替 COM 对象的文本。
SF_TEXTIZED
具有 COM 对象的文本表示形式的文本。

如果应用程序存储 COM 对象本身,则 SF_RTFNOOBJS 选项非常有用,因为 COM 对象的 RTF 表示形式不是非常紧凑。 控件字 \objattph 后跟空格表示对象位置。

此外,还可以指定以下标志。

含义
SFF_PLAINRTF
如果指定,丰富编辑控件仅流出所有语言通用的关键字,忽略特定于语言的关键字。 如果未指定,则 Rich Edit 控件会流式传输所有关键字。 可以将此标志与 SF_RTFSF_RTFNOOBJS 标志组合在一起。
SFF_SELECTION
如果指定,则 Rich edit 控件仅流出当前所选内容。 如果未指定,控件将流出整个内容。 可以将此标志与任何数据格式值组合在一起。
SF_UNICODE
Microsoft Rich Edit 2.0 及更高版本: 指示 Unicode 文本。 可以将此标志与 SF_TEXT 标志组合在一起。
SF_USECODEPAGE
Rich Edit 3.0 及更高版本: 使用其他代码页生成 UTF-8 RTF 和文本。 代码页在 wParam 的高字中设置。 例如,对于 UTF-8 RTF,请将 wParam 设置为 (CP_UTF8 << 16) |SF_USECODEPAGE |SF_RTF。

lParam

指向 EDITSTREAM 结构的指针。 输入时,此结构的 pfnCallback 成员必须指向应用程序定义的 EditStreamCallback 函数。 在输出中,如果发生错误, dwError 成员可以包含非零错误代码。

返回值

此消息返回写入数据流的字符数。

注解

发送EM_STREAMOUT消息时,rich edit 控件会重复调用 EDITSTREAM 结构的 pfnCallback 成员指定的 EditStreamCallback 函数。 每次调用回调函数时,控件都会传递一个缓冲区,其中包含控件的一部分内容。 此过程一直持续到控件将其所有内容传递给回调函数,或直到发生错误为止。

要求

要求
最低受支持的客户端
Windows Vista [仅限桌面应用]
最低受支持的服务器
Windows Server 2003 [仅限桌面应用]
标头
Richedit.h

另请参阅

引用

EDITSTREAM

EditStreamCallback

EM_STREAMIN