The IProviderAdmin::GetLastError method returns a MAPIERROR structure containing information about the previous error occurring to the provider administration object.
[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 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 GetLastError does not support Unicode, or MAPI_UNICODE was not set and GetLastError only supports Unicode.
Remarks
The IProviderAdmin::GetLastError method supplies information about a prior method call that failed. Callers can provide their users with detailed information about the error by including the data from the MAPIERROR structure in a dialog box.
Notes to Callers
You can make use of the MAPIERROR structure pointed to by the lppMAPIError parameter — if MAPI supplies one — only if GetLastError returns S_OK. Sometimes MAPI cannot determine what the last error was or has nothing more to report about the error. In this situation, a pointer to NULL is returned in lppMAPIError instead.