WM_RENDERALLFORMATS消息

如果剪贴板所有者延迟了呈现一种或多种剪贴板格式,请在销毁剪贴板之前将其发送给剪贴板所有者。 为使剪贴板的内容可供其他应用程序使用,剪贴板所有者必须以它能够生成的所有格式呈现数据,并通过调用 SetClipboardData 函数将数据放置在剪贴板上。

窗口通过其 WindowProc 函数接收此消息。

#define WM_RENDERALLFORMATS             0x0306

参数

wParam

不使用此参数,并且必须为零。

lParam

不使用此参数,并且必须为零。

返回值

如果应用程序处理此消息,则它应返回零。

备注

响应WM_RENDERALLFORMATS消息时,应用程序必须调用 OpenClipboard 函数,然后在调用 SetClipboardData 之前通过调用 GetClipboardOwner 函数来检查它仍然是剪贴板所有者。

应用程序需要在打开剪贴板后检查它仍然是剪贴板所有者,因为在它收到WM_RENDERALLFORMATS消息后,但在打开剪贴板之前,另一个应用程序可能已打开并拥有剪贴板的所有权,并且不应覆盖该应用程序的数据。

在大多数情况下,应用程序不应在调用 SetClipboardData 之前调用 EmptyClipboard 函数,因为这样做将清除应用程序已呈现的剪贴板格式。

当应用程序返回时,系统会从可用剪贴板格式列表中删除所有未恢复的格式。 有关延迟呈现的信息,请参阅 延迟呈现

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Winuser.h(包括 Windows.h)

另请参阅

引用

EmptyClipboard

OpenClipboard

SetClipboardData

WM_RENDERFORMAT

概念性

剪贴板