What's New in This Edition
What's New in This Edition |
This topic describes what is new in the current edition of the Microsoft Office Outlook 2007 Auxiliary Reference. The earlier version of this reference is the Microsoft Office Outlook 2003 Integration API Reference.
Attachment Security API
Feature Area | Description | Related Topics |
Attachment blocking | Use IAttachmentSecurity::IsAttachmentBlocked to verify whether Outlook blocks a specified attachment for viewing and indexing. |
Indexing Stores for Search
Feature Area | Description | Related Topics |
Registering stores for indexing | How to register stores for the MAPI Protocol Handler to index. | |
Notification-based indexing | How store providers can use the STORE_PUSHER_OK flag to indicate to the MAPI Protocol Handler to index only when notified, and how to send such notifications. |
Mail Envelope API
The Mail Envelope API enables users on a MAPI mail client to interface with applications in the 2007 Office system and to send Office documents. Note that this API is supported by Microsoft Office Outlook 2007 only and will be deprecated in future releases.
MAPI Additional Documentation
Numerous MAPI properties, constants, data types and functions have been added to this release. For an overview of these additions, such as general properties of message objects and properties of messaging user objects for Unicode support, see About MAPI Additions. The following table highlights some of these additions.
Feature Areas | Description | Related Topics |
Address Book | Properties contain the Address Book location in online and offline scenarios. | |
Address Book entry | Use the DIALOG_MODAL flag in IAddrBook::Details to display the address book entry in a modal dialog box. | |
Address Book entry, Store caching | Use the MAPI_CACHE_ONLY flag to open an Address Book entry and to subsequently access it only from the cache. | |
Background processing | Use the MAPI_BG_SESSION flag to log on to a MAPI session for any processing that is intended to be unobtrusive and stay in the background. | |
Contact photograph | Attach a picture of a contact to the underlying messaging user object. | |
Exchange Server connection | Property contains the profile settings to connect Outlook to Microsoft Exchange Server using a remote procedure call (RPC) over Hypertext Transfer Protocol (HTTP). | |
Exchange Server versioning | Detect the version of Exchange Server that is connected to the active account. | |
MAPI versioning | Restore mapi32.dll. | |
Message aging | Specify the length of time that a message remains in a folder before it is archived. | |
Message encoding | Specify an Internet encoding scheme for the Exchange Internet Mail Service (IMS) to encode the body and attachments of a message. | |
Message encoding | There are several ways to specify whether TNEF or plain text should be used when converting an outgoing MAPI message to MIME format. | |
Name resolution | Set the order of address lists by which recipients in e-mail messages and attendees in meeting requests are resolved. | |
Outlook user interface | Appropriately display an Address Book entry depending on its type and whether it is local, remote, or security-controlled. | |
Outlook user interface | Display the name and icon for the MAPI provider in the Outlook status bar. | |
Outlook special folders | Identify Outlook special folders, such as the Calendar folder and Contacts folder, by their entry IDs that are stored in the Inbox folder and root folder of the message store. | |
Spam filtering | Use the SPAMFILTER_ONSAVE flag to enable spam filtering on a message that is being saved. | |
Store caching | If the client is in Cached Exchange Mode, use the IID_IMessageRaw GUID symbolic name to request an IMessage interface for a message with only the header in the cache, without forcing a download from the server for the entire message. | |
Store caching | If the client is in Cached Exchange Mode, use the MAPI_NO_CACHE flag to open an item or folder on the remote store that has been opened in cached mode, and subsequently access the item or folder directly from the remote store. | |
Store caching | If the client is in Cached Exchange Mode, use the MDB_ONLINE flag to open a non-default store on a remote server. | |
Unicode support | Use the MAPI_UNICODE flag to create and open a new message file (.msg) that supports Unicode properties. | |
Unicode support | Use the STORE_UNICODE_OK flag in the PR_STORE_SUPPORT_MASK property to indicate the store supports Unicode storage. |
MAPI Configuration
Feature Area | Description | Related Topics |
MAPI versioning | Load and dispatch calls to a specific version of MAPI. | |
MAPI versioning | Restore mapi32.dll. |
Named Properties in Outlook
Feature Area | Description | Related Topics |
Cached Exchange Mode | Verify whether Outlook has downloaded only the header of a message in Cached Exchange Mode. | |
Custom forms | Remove custom form definition that has been saved with a message. | |
Meeting items in the Outlook object model | Identify a meeting item as a counter-proposal to an earlier meeting request by using the Outlook object model. | |
Message objects representing tasks | Miscellaneous named properties for task items. | See the list under the PSETID_Task namespace in About Named Properties Used by Outlook. |
Message objects used for logging journals | Miscellaneous named properties for journal items. | See the list under the PSETID_Log namespace in About Named Properties Used by Outlook. |
Message objects used for scheduling | Miscellaneous named properties for appointment items and meeting request items. | See the list under the PSETID_Appointment namespace in About Named Properties Used by Outlook. |
Message objects used for scheduling | Verify the update status of a meeting request item. | |
Message objects representing contacts | Miscellaneous named properties for contact items. | See the list under the PSETID_Address namespace in About Named Properties Used by Outlook. |
Message objects representing contacts | Obtain information for a contact given the corresponding entry in the Contacts Address Book. | |
Message objects representing contacts | Obtain the primary e-mail address of an Outlook contact item. | |
Spam filter | Outlook avoids moving the same e-mail to the Junk E-mail folder again after a user has identified the e-mail as a non-spam message. |
Outlook Configuration
Feature Area | Description | Related Topics |
Daylight saving time (DST) | Rebase calendars programmatically for DST. |
|
Conflict resolution | Specify item-specific resolution for custom item types. | |
Offline address book (OAB) | Registry key to check the last time an OAB was updated. |
Outlook Exported APIs
Feature Area | Description | Related Topics |
Exchange Server | Auto-discovery of Microsoft Exchange Server 2007. | |
Exchange Server | Verify whether Cached Exchange Mode is enabled and enforced by Group Policy. | |
Exchange Server | Verify PST and OST shared memory is in a consistent state and move the data to disk. | |
Messages | Decompress the body of a message that is in compressed RTF mode and optionally convert it to the native format. |
Sample Service Providers
The Outlook 2007 Auxiliary Reference includes three sample service providers: an address book provider, a message store provider, and a transport provider. The sample message store provider is a wrapped personal store that is intended to work with the Replication API. For more information about these samples, see About the Sample Address Book Provider, About the Sample Wrapped PST Store Provider, and About the Sample Transport Provider. To download the code samples for these sample service providers, see Outlook 2007 Auxiliary Reference Code Samples and Redistributable Installer.
Sample Offline State Add-in
The Sample Offline State Add-in is a COM add-in that adds an Offline State menu to Outlook and uses the Offline State API. Through the Offline State menu you can enable or disable state monitoring, check the current state, and change the current state. For more information, see About the Sample Offline State Add-in. To download the code sample, see Outlook 2007 Auxiliary Reference Code Samples and Redistributable Installer.
How-to Code Samples
The Outlook 2007 Auxiliary Reference provides code examples that demonstrate how to do some common tasks.
- How to: Access a Message on an IMAP Store Without Downloading the Entire Message
- How to: Access a Store on the Remote Server When Outlook is in Cached Exchange Mode
- How to: Detect the Version of Exchange Server in an Outlook Profile
- How to: Determine if Outlook Downloaded Only the Header of a Message
- How to: Get the E-mail Address of a Contact Item
- How to: Get the Path of a Specific Version of MAPI for the Default Mail Client
- How to: Identify a Meeting Item as a Counter-Proposal to a Prior Meeting Request
- How to: Manage a Message in an OST Without Invoking a Synchronization in Cached Exchange Mode
- How to: Obtain a Contact Message Given a Contacts Address Book Entry
- How to: Open a Store on the Remote Server When Outlook is in Cached Exchange Mode
- How to: Parse a Stream from a Binary Property to Read the TZDEFINITION Structure
- How to: Parse a Stream from a Binary Property to Read the TZREG Structure
- How to: Programmatically Set the Resolution Order for Address Lists
- How to: Read Time Zone Properties from an Appointment
- How to: Remove Custom Form Definition Saved With a Message
- How to: Retrieve the Body of a Message in Compressed RTF and Convert It to Its Native Format
- How to: Specify an Internet Encoding Scheme for the Body and Attachments of a Message
- How to: Use the MAPI Crash Recovery API
- How to: Verify an Attachment is Blocked
Enhancements to Existing APIs
For the following APIs that are documented in earlier releases of the Outlook Integration API Reference, in the Outlook 2007 Auxiliary Reference, new members have been added and earlier issues have been fixed.
The next sections list the new APIs that have been added.
Account Management API
Additions to the Account Management API include the following:
Feature Area | Description | Related Topics |
Account information | Properties that contain the name and stamp of the account that delivered a message. | |
Account information | Properties that contain the entry ID for the default delivery folder, default delivery store, and default folder for sent items of an account. | |
Account support | Determine the capability of an account so that Outlook can disable the appropriate user interface elements. | |
Outlook user interface | Specify a store as the default delivery store for an account will list the store in the To-Do Bar. |
MAPI-MIME Conversion API
Additions to the MAPI-MIME Conversion API include the following:
Feature Area | Description | Related Topics |
Custom character set | Specify a character set for MAPI-to-MIME conversion. | |
Name resolution | Specify a MAPI address book for MAPI-to-MIME conversion. | |
New actions | New flags CCSF_USE_TNEF, CCSF_8BITHEADERS, and CCSF_PLAIN_TEXT_ONLY for MAPI-to-MIME conversion. | |
Transport Neutral Encapsulation Format (TNEF) support | There are several ways to specify whether TNEF or plain text should be used when converting an outgoing MAPI message to MIME format. |
Replication API and Sample Store Provider for Wrapped PST Store
Additions to the Replication API include the following:
Feature Area | Description | Related Topics |
Error condition | Get extended information about the last error when replicating data between the server and the local store. | |
Sample provider for a wrapped Personal Folders (PST) store | This code sample provides a starting point to develop a wrapped PST store provider that can utilize the Replication API to synchronize data between the server and the local PST store. |
Store API
Additions to the Store API include the following:
Feature Area | Description | Related Topics |
Identifying folders | Property contains multiple values that are mapped to entry IDs of specific folders if they exist on the store. | |
Scanning folders | Properties that specify whether certain folders on a store can be scanned. | |
Store access | Obtain access to a personal store without invoking synchronization. | |
Store searching | Properties that contain IDs for folders and items, that persist between sessions and are used for identifying search results. | |
Store searching | Properties that contain specific strings for querying in messages. | |
Store support | Verify a folder's support for sharing. | |
Store support | Verify how a store supports restrictions, and if a non-default store can support folder home pages. |