CDO has gone through various name changes over its long life. Its evolution can be traced through "Simple MAPI,” a set of APIs for Visual Basic 1, through a more general-purpose Visual Basic Extension (VBX), then into a general-purpose COM interface known as Active Messaging, and finally receiving even more features and being renamed CDO.
It provides a rich object model; there are objects for messages, folders, users, distribution lists, etc. The object model is “rooted” from a MAPI session object. The session object identifies the mailbox and provides a list of subfolders, each of which has its own list of messages and subfolders.
First, let’s experiment with MAPI from a Python prompt. Create a MAPI session using the standard COM technique:
>>> from win32com.client import Dispatch >>> s=Dispatch("Mapi.Session") >>>
Then log on to the MAPI session. This presents a dialog box to authenticate the session:
>>> s.Logon() >>>
By consulting the documentation for the MAPI session object, you can
see there is an
object. You can see how many messages
this folder contains:
>>> len(s.Inbox.Messages) 304
And look at the first one:
>>> s.Inbox.Messages.Item(1).Subject 'Free WinZip ...