IMSLogon::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。

备注

使用 IMSLogon::GetLastError 方法检索信息,以便在消息中向用户显示的信息,说明从消息存储对象的方法调用返回的最后一个错误。

若要释放 MAPI 为返回的 MAPIERROR 结构分配的所有内存,客户端应用程序只需调用 MAPIFreeBuffer 函数。

必须S_OK GetLastError 中的返回值,应用程序才能使用 MAPIERROR。 即使返回值S_OK,也可能不会返回 MAPIERROR 。 如果实现无法确定上一个错误是什么,或者 MAPIERROR 对于该错误不可用, GetLastError 将改为在 lppMAPIError 中返回指向 NULL 的指针。

另请参阅

MAPIERROR

MAPIFreeBuffer

IMSLogon : IUnknown