IPersistMessage::GetLastError

适用于:Outlook 2013 | Outlook 2016

返回 一个 MAPIERROR 结构,其中包含有关表单对象中上一个错误的信息。

HRESULT GetLastError(
  HRESULT hResult,
  ULONG ulFlags,
  LPMAPIERROR FAR * lppMAPIError
);

参数

hResult

[in]HRESULT 数据类型,其中包含在上一个方法调用中生成的错误值。

ulFlags

[in]控制返回的字符串类型的标志位掩码。 可以设置以下标志:

MAPI_UNICODE

lppMAPIError 参数中返回的 MAPIERROR 结构中的字符串采用 Unicode 格式。 如果未MAPI_UNICODE,则字符串采用 ANSI 格式。

lppMAPIError

[out]指向 MAPIERROR 结构的指针的指针,其中包含错误的版本、组件和上下文信息。 如果表单无法为 MAPIERROR 结构提供适当的信息,可以将 lppMAPIError 参数设置为 NULL。

返回值

S_OK

调用成功并返回了预期值。

MAPI_E_BAD_CHARWIDTH

设置 MAPI_UNICODE 标志,通讯簿提供程序不支持 Unicode,或者未MAPI_UNICODE且通讯簿提供程序仅支持 Unicode。

备注

Form 对象实现 IPersistMessage::GetLastError 方法,以提供有关失败的以前方法调用的信息。 表单查看器可以通过在对话框中包含 MAPIERROR 结构的数据,为用户提供有关错误的详细信息。

调用 GetLastError 不会影响窗体的状态。 当 GetLastError 返回时,表单将保持调用之前的状态。

给调用方的说明

只有当 GetLastError 返回值时,才能使用 MAPIERROR 结构(如果表单提供一个由 lppMAPIError 参数S_OK)。 有时,窗体无法确定上一个错误是什么,或者只报告有关该错误的任何内容。 在这种情况下,表单会改为在 lppMAPIError 中返回指向 NULL 的指针。

有关 GetLastError 方法的详细信息,请参阅 MAPI 扩展错误

另请参阅

MAPIERROR

MAPIFreeBuffer

IPersistMessage : IUnknown