Client Applications and Search Methods
Outlook uses MAPI-based search methods to search in Exchange Server 2003. If you are developing custom client applications, you can use MAPI-based search methods or ExOLEDB-based search methods. To use ExOLEDB, choose from several APIs: HTTP/DAV, Collaboration Data Objects (CDO), or ActiveX Data Objects (ADO).
Note
You cannot use MAPI for Appointment or Task searches.
The following table provides more information about the different methods you can use to search in Exchange Server 2003. In this table, shallow refers to a search whose scope is limited to a single folder or a set of specific folders. Deep refers to a search whose scope includes a folder and all of its subfolders.
Search methods used by available protocols in Exchange Server 2003
API or application | Scope | Method | Creates search folder |
---|---|---|---|
MAPI |
Shallow |
Restrict FindRow |
Yes Only in memory |
Outlook (public folders only) (MAPI protocol) |
Shallow |
Restrict |
Yes |
Outlook (mailboxes) (MAPI protocol) |
Any |
SetSearchCriteria |
Yes |
CDO 1.2 (MAPI protocol) |
Any |
Restrict |
Yes |
CDO 2.x, CDO 3.x, ADO (ExOLEDB) |
Shallow (single folder) |
Restrict |
Yes |
CDO 2.x, CDO 3.x, ADO (ExOLEDB) |
Deep, or shallow with multiple folders |
SRestrict SetSearchCriteria |
Yes Temporary |
HTTP/DAV (ExOLEDB) |
Any |
Search |
Yes; may be nested |
HTTP/DAV (ExOLEDB) |
Any |
PropFind |
No |
Points to Remember When Searching with ExOLEDB
To search using an ExOLEDB method, you must construct an SQL statement for the search. When Exchange Server 2003 processes this SQL statement, it converts the statement to an SRestrict structure that is compatible with MAPI.
Processes that use ExOLEDB can only run on the server that holds the data to be searched. This means that search processing may slow your Exchange Server 2003 mailbox or public folder servers.
Points to Remember When Searching with HTTP/DAV
Because HTTP/DAV searches internally use ExOLEDB, they function like other ExOLEDB searches in most cases. One exception is that if you use the HTTP/DAV PropFind method, you can move some of the search processing load onto a server other than the Exchange Server 2003 mailbox or public folder server.
You can use HTTP/DAV to create nested search folders. If you search an existing search folder, Exchange Server 2003 creates a new search folder in the original search folder.