IMAPISupport::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标志,MAPI 不支持 Unicode,或者未设置MAPI_UNICODE且 MAPI 仅支持 Unicode。
备注
为所有支持对象实现 IMAPISupport::GetLastError 方法。 调用方可以通过在对话框中包括 MAPIERROR 结构中的数据,向其用户提供有关错误的详细信息。
给调用方的说明
只有在 GetLastError 返回S_OK时,才能在 lppMAPIError 参数中使用指向 MAPIERROR 结构的指针(如果 MAPI 提供一个)。 有时 MAPI 无法确定最后一个错误是什么,或者它没有更多关于错误的报告。 在这种情况下, lppMAPIError 改为返回指向 NULL 的指针。
有关 GetLastError 方法的详细信息,请参阅 MAPI 扩展错误。
若要释放 MAPI 分配的所有内存,请为返回的 MAPIERROR 结构调用 MAPIFreeBuffer 函数。