Receiving Messages using Hook Providers
The following diagram illustrates the interaction between MAPI components involved in the message receiving process.

The steps in this process are:
-
The underlying messaging system delivers a message to a transport provider.
-
The transport provider communicates with the MAPI spooler to get a pointer to a new message object created by the message store provider.
-
The transport provider writes the inbound message's data to the new message object in the message store.
-
The MAPI spooler calls all hook providers to operate on the message.
-
The hook providers communicate with the message store provider to move the message to a different folder, delete it, and so on.