IOleObject::GetClipboardData 方法 (oleidl.h)

检索包含调用此方法的嵌入对象的当前内容的数据对象。 使用指向此数据对象的指针,可以使用与原始对象相同的数据创建新的嵌入对象。

语法

HRESULT GetClipboardData(
  [in]  DWORD       dwReserved,
  [out] IDataObject **ppDataObject
);

parameters

[in] dwReserved

此参数是保留的,必须为零。

[out] ppDataObject

接收指向数据对象的接口指针的 IDataObject 指针变量的地址。 如果发生错误,必须将 ppDataObject 设置为 NULL。 每次对象收到对 IOleObject::GetClipboardData 的调用时,它都必须增加 ppDataObject 上的引用计数。 调用方负责在使用 ppDataObject 时调用 Release

返回值

此方法在成功时返回S_OK。 其他可能的返回值包括以下内容。

返回代码 说明
E_NOTIMPL

不支持 GetClipboardData

OLE_E_NOTRUNNING
对象未运行。

注解

可以使用 IOleObject::GetClipboardData 方法将链接的对象转换为嵌入对象,在这种情况下,容器应用程序将调用 IOleObject::GetClipboardData ,然后将接收的数据传递给 OleCreateFromData。 此方法返回指向数据对象的指针,该指针与标准复制操作传递到剪贴板的数据对象相同。

调用方备注

如果需要嵌入对象的当前内容的稳定快照,请调用 IOleObject::GetClipboardData。 如果数据发生更改,则需要为更新的快照再次调用 函数。 如果希望调用方知道数据发生更改,请调用 QueryInterface,然后调用 IDataObject::D Advise

实施者说明

如果实现此函数,则必须为数据不会更改的对象返回 IDataObject 指针。

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 oleidl.h

请参阅

IDataObject

IOleObject

IOleObject::InitFromData

OleCreateFromData