IABLogon::GetLastError

适用于:Outlook 2013 | Outlook 2016

返回一个 MAPIERROR 结构,该结构包含有关上一个通讯簿提供程序错误的信息。

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

参数

hResult

[in]在上一方法调用中生成的错误值的句柄。

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。

备注

通讯簿提供程序实现 GetLastError 方法,以提供有关以前失败的方法调用的信息。 调用方可以通过在对话框中包括 MAPIERROR 结构中的数据,向其用户提供有关错误的详细信息。

给调用方的说明

如果通讯簿提供程序提供结构,并且仅当 GetLastError 返回S_OK,则可以使用 lppMAPIError 参数指向的 MAPIERROR 结构。 有时通讯簿提供程序无法确定最后一个错误是什么,或者无法再报告有关该错误的内容。 在这种情况下,通讯簿提供程序改为在 lppMAPIError 中返回指向 NULL 的指针。

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

另请参阅

MAPIERROR

MAPIFreeBuffer

IABLogon : IUnknown