IMAPIProviderShutdown : IUnknown
Last modified: July 23, 2011
Applies to: Outlook
Allows the MAPI subsystem to inform a MAPI provider of the fast shutdown of a MAPI client, so that the MAPI provider can respond to the shutdown.
Queries the MAPI provider for fast shutdown support.
Indicates to the MAPI provider that a MAPI client is going to do a fast shutdown, so that the provider can take actions to prevent data loss.
Indicates to the MAPI provider that the MAPI client is exiting immediately, so that the MAPI provider will persist changes to prevent data loss.
Fast shutdown allows a MAPI client to exit its process within a short time, hopefully after the client and loaded MAPI providers have saved MAPI settings and data. The MAPI client always initiates a fast shutdown and should query the MAPI subsystem for fast shutdown support from the loaded MAPI providers. An administrator can set the Windows registry at the user level to specify the level of provider support that is necessary to allow fast shutdown of all MAPI clients. For more information about the registry settings, see Fast Shutdown User Options. However, for fast shutdown to successfully occur without data loss, MAPI providers should implement the IMAPIProviderShutdown interface.
A MAPI provider that needs to support client fast shutdown should return S_OK to the MAPI subsystem in the IMAPIProviderShutdown::QueryFastShutdown method. When the MAPI subsystem subsequently calls the IMAPIProviderShutdown::NotifyProcessShutdown and IMAPIProviderShutdown::DoFastShutdown methods, the MAPI provider should take necessary actions to save MAPI settings and data and prepare for the client's exit.
MAPI providers that do not need to support client fast shutdown should still implement the IMAPIProviderShutdown interface, and have the IMAPIProviderShutdown::QueryFastShutdown method return MAPI_E_NO_SUPPORT. For Outlook as a MAPI client, this causes Outlook to wait for all external references to be released before it exits.
Depending on the user's Windows registry setting for fast shutdown, not implementing the IMAPIProviderShutdown interface does not necessarily prevent a client fast shutdown.