MAPI 状态对象

适用于:Outlook 2013 | Outlook 2016

状态对象报告有关 MAPI 资源的信息。 例如,服务提供商、MAPI 发送/接收进程或通讯簿。

有一个状态对象提供有关当前配置文件中每个服务提供程序的信息。 MAPI 负责为子系统、MAPI 发送/接收进程和通讯簿实现状态对象。 子系统状态对象提供全局信息。 集成通讯簿的状态对象提供当前正在运行的所有通讯簿提供程序的状态。

每个状态对象都包含在状态表中,状态表由 MAPI 维护,为客户端提供会话的所有状态信息。 有关详细信息,请参阅 状态表。 客户端可以通过 表访问特定状态对象,也可以通过服务提供程序的登录对象访问该状态对象。 例如,若要访问通讯簿提供程序的状态对象,客户端可以调用 IABLogon::OpenStatusEntry。 有关详细信息,请参阅 IABLogon::OpenStatusEntry

客户端可以使用状态对象来:

  • 了解会话的状态。

  • 监视服务提供商。

  • 控制消息传输。

  • 查看或更改资源的配置和状态。

每个状态对象实现 IMAPIStatus 接口。 有关详细信息,请参阅 IMAPIStatus :IMAPIProp。 但是,并非每个状态对象都完全支持每个 IMAPIStatus 方法。 由于状态对象支持的方法存在差异,因此客户端需要先了解特定的状态对象,然后才能使用它。 需要状态对象才能在以下三个属性中发布有关其功能的信息:

PR_RESOURCE_METHODS (PidTagResourceMethods)

PR_RESOURCE_TYPE (PidTagResourceType)

PR_RESOURCE_FLAGS (PidTagResourceFlags)

有关实现状态对象的详细信息,请参阅 Status 对象实现。 有关使用状态对象的详细信息,请参阅 状态表和状态对象