NOTIFICATION

适用于:Outlook 2013 | Outlook 2016

包含有关已发生的事件以及受该事件影响的数据的信息。

属性
标头文件:
Mapidefs.h
typedef struct
{
  ULONG ulEventType;
  union
  {
    ERROR_NOTIFICATION err;
    NEWMAIL_NOTIFICATION newmail;
    OBJECT_NOTIFICATION obj;
    TABLE_NOTIFICATION tab;
    EXTENDED_NOTIFICATION ext;
    STATUS_OBJECT_NOTIFICATION statobj;
  } info;
} NOTIFICATION, FAR *LPNOTIFICATION;

Members

ulEventType

发生的通知事件类型。 ulEventType 成员的值对应于信息联合中包含的结构。 ulEventType 成员可以设置为以下值之一:

fnevCriticalError

发生了全局错误,例如会话正在关闭。 信息成员包含ERROR_NOTIFICATION结构。

fnevExtended

发生了由特定服务提供程序定义的内部事件。 信息成员包含EXTENDED_NOTIFICATION结构。

fnevNewMail

邮件已传递到邮件类的相应接收文件夹,正在等待处理。 信息成员包含NEWMAIL_NOTIFICATION结构。

fnevObjectCopied

已复制 MAPI 对象。 信息成员包含OBJECT_NOTIFICATION结构。

fnevObjectCreated

已创建 MAPI 对象。 信息成员包含OBJECT_NOTIFICATION结构。

fnevObjectDeleted

MAPI 对象已删除。 信息成员包含OBJECT_NOTIFICATION结构。

fnevObjectModified

MAPI 对象已更改。 信息成员包含OBJECT_NOTIFICATION结构。

fnevObjectMoved

已移动消息存储或通讯簿对象。 信息成员包含OBJECT_NOTIFICATION结构。

fnevSearchComplete

搜索操作已完成,结果可用。 信息成员包含OBJECT_NOTIFICATION结构。

fnevTableModified

表中的信息已更改。 信息成员包含TABLE_NOTIFICATION结构。

info

描述特定类型事件的受影响数据的通知结构的联合。 信息成员中包含的结构取决于 ulEventType 成员的值。

备注

每次调用已注册的建议接收器的 IMAPIAdviseSink::OnNotify 方法时,都会将一个或多个 NOTIFICATION 结构作为输入参数传递。 NOTIFICATION 结构包含有关已发生的特定事件的信息,并描述受影响的对象。

在接收通知的客户端或服务提供商可以使用 结构处理事件之前,它们必须检查 ulEventType 成员中指示的事件类型。 例如,此处显示的代码示例检查新消息的到达情况,并在检测到此类事件时输出消息的 message 类。

if (pNotif -> ulEventType == fnevNewMail)
{
printf("%s\n", pNotif -> newmail.lpszMessageClass)
}

有关通知的详细信息,请参阅下表中所述的主题。

主题 说明
MAPI 中的事件通知
通知和通知事件的常规概述。
处理通知
讨论客户端应如何处理通知。
支持事件通知
讨论服务提供商如何使用 IMAPISupport 方法生成通知。

另请参阅