IDataObject 接口 (objidl.h)

启用数据传输和数据更改通知。 数据传输方法指定已传输数据的格式以及要通过其传输数据的介质。 (可选)可以为特定目标设备呈现数据。 除了用于检索和存储数据的方法外, IDataObject 接口还指定用于枚举可用格式和管理与通知接收器的连接以处理更改通知的方法。

术语 数据对象 用于表示支持 IDataObject 接口实现的任何对象。 实现因数据对象需要执行的操作而异;在某些数据对象中,对象不支持的某些方法的实现可能只是E_NOTIMPL的返回。 例如,某些数据对象不允许调用方向其发送数据。 其他数据对象不支持咨询连接和更改通知。 但是,对于支持更改通知的数据对象,OLE 提供了一个名为数据建议持有者的对象。 通过调用帮助程序函数 CreateDataAdviseHolder,可以使用指向此持有者的接口指针。 一个数据对象可以有多个连接,每个连接都有自己的属性集。 OLE 数据建议持有者简化了管理这些连接和发送相应通知的任务。

继承

IDataObject 接口继承自 IUnknown 接口。 IDataObject 还具有以下类型的成员:

方法

IDataObject 接口具有以下方法。

 
IDataObject::D Advise

由支持建议接收器的对象调用,以在数据对象与建议接收器之间创建连接。 这使建议接收器能够收到对象数据更改的通知。
IDataObject::D Unadvise

销毁以前设置的通知连接。
IDataObject::EnumDAdvise

创建可用于对当前的通知连接进行枚举的对象。
IDataObject::EnumFormatEtc

创建一个 对象来枚举数据对象支持的格式。
IDataObject::GetCanonicalFormatEtc

提供可能不同但逻辑上等效的 FORMATETC 结构。 使用此方法可以确定两个不同的 FORMATETC 结构是否会返回相同的数据,从而消除了重复呈现的需要。
IDataObject::GetData

由数据使用者调用,以从源数据对象获取数据。
IDataObject::GetDataHere

由数据使用者调用,以从源数据对象获取数据。 此方法与 GetData 方法的不同之处在于,调用方必须分配和释放指定的存储介质。
IDataObject::QueryGetData

确定数据对象是否能够按指定呈现数据。 尝试粘贴或删除操作的对象可以在调用 IDataObject::GetData 之前调用此方法,以获取操作是否成功的指示。
IDataObject::SetData

由包含数据源的 对象调用,以将数据传输到实现此方法的 对象。

要求

要求
最低受支持的客户端 Windows 2000 专业版 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows 2000 Server [桌面应用 |UWP 应用]
目标平台 Windows
标头 objidl.h