IMAPIControl::GetLastError

The IMAPIControl::GetLastError method returns a MAPIERROR structure containing information about the previous button control error.

Quick Info

See IMAPIControl : 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.
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 a MAPIERROR structure containing version, component, and context information for the error. The lppMAPIError parameter can be set to NULL if the provider cannot supply a MAPIERROR structure with appropriate information.

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

Service providers implement the IMAPIControl::GetLastError method to supply information about a prior method call that failed. MAPI can provide users with detailed information about the error by displaying the data from the MAPIERROR structure in a message or dialog box.

Notes to Implementers

It is not required that you have information to place in the MAPIERROR structure for every error. It may not be possible to determine what the previous error was. If you have information, return S_OK and the appropriate data in the MAPIERROR structure. If no information is available, return S_OK and a pointer to NULL for the lppMAPIError parameter.

For more information about the GetLastError method, see Using Extended Errors.

See Also

MAPIERROR, MAPIFreeBuffer