IDataObject.DAdvise(FORMATETC, ADVF, IAdviseSink, Int32) 方法

定义

在数据对象和通知接收器之间创建连接。 此方法由对象进行调用,该对象支持通知接收器并使通知接收器能收到有关对象数据中的更改的通知。

public:
 int DAdvise(System::Runtime::InteropServices::ComTypes::FORMATETC % pFormatetc, System::Runtime::InteropServices::ComTypes::ADVF advf, System::Runtime::InteropServices::ComTypes::IAdviseSink ^ adviseSink, [Runtime::InteropServices::Out] int % connection);
public int DAdvise (ref System.Runtime.InteropServices.ComTypes.FORMATETC pFormatetc, System.Runtime.InteropServices.ComTypes.ADVF advf, System.Runtime.InteropServices.ComTypes.IAdviseSink adviseSink, out int connection);
abstract member DAdvise : FORMATETC * System.Runtime.InteropServices.ComTypes.ADVF * System.Runtime.InteropServices.ComTypes.IAdviseSink * int -> int
Public Function DAdvise (ByRef pFormatetc As FORMATETC, advf As ADVF, adviseSink As IAdviseSink, ByRef connection As Integer) As Integer

参数

pFormatetc
FORMATETC

由引用传递的 FORMATETC 结构,它定义以后的通知将使用的格式、目标设备、方面和介质。

advf
ADVF

一个 ADVF 值,它指定用于控制通知连接的一组标志。

adviseSink
IAdviseSink

指向将接收更改通知的通知接收器上的 IAdviseSink 接口的指针。

connection
Int32

此方法返回时,包含指向标识此连接的 DWORD 标记的指针。 以后可以使用此标记来删除通知连接,方法是将该标记发送至 DUnadvise(Int32)。 如果此值为零,则未建立连接。 此参数未经初始化即被传递。

返回

此方法支持 E_INVALIDARG、E_UNEXPECTED 和 E_OUTOFMEMORY 等标准返回值,以及下面的值:

说明
S_OK 已创建通知连接。
E_NOTIMPL 此方法未在数据对象上实现。
DV_E_LINDEX lindex 有一个无效值;当前,只支持 -1。
DV_E_FORMATETC pFormatetc 参数有一个无效值。
OLE_E_ADVISENOTSUPPORTED 该数据对象不支持更改通知。

注解

有关详细信息,请参阅 IDataObject::D Advise 方法

适用于