IMSLogon::GetLastError

The IMSLogon::GetLastError method returns a MAPIERROR structure containing information about the last error that occurred for the message store object.

Quick Info

See IMSLogon : IUnknown.

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

Parameters

hResult
[in] HRESULT data type containing the error value generated in the previous method call for the message store object.
ulFlags
[in] Bitmask of flags that controls the type of the returned strings. The following flag can be set:
MAPI_UNICODE
The strings in the MAPIERROR structure returned in the lppMAPIError parameter are in Unicode format. If the MAPI_UNICODE flag is not set, the strings are in ANSI format.
lppMAPIError
[out] Pointer to a pointer to the returned MAPIERROR structure containing version, component, and context information for the error. The lppMAPIError parameter can be set to NULL if there is no MAPIERROR structure to return.

Return Values

S_OK
The call succeeded and has returned the expected value or values.
MAPI_E_BAD_CHARWIDTH
Either the MAPI_UNICODE flag was set and the implementation does not support Unicode, or MAPI_UNICODE was not set and the implementation only supports Unicode.

Remarks

Use the IMSLogon::GetLastError method to retrieve information to display in a message to the user regarding the last error returned from a method call for the message store object.

To release all the memory allocated by MAPI for the returned MAPIERROR structure, client applications need only call the MAPIFreeBuffer function.

The return value from GetLastError must be S_OK for an application to make use of the MAPIERROR structure. Even if the return value is S_OK, a MAPIERROR structure might not be returned. If the implementation cannot determine what the last error was, or if a MAPIERROR structure is not available for that error, GetLastError returns a pointer to NULL in lppMAPIError instead.

See Also

MAPIERROR, MAPIFreeBuffer