home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / sdk / dbmsg / mapi / route.cli / readme.txt < prev    next >
Encoding:
Text File  |  1996-04-06  |  2.8 KB  |  62 lines

  1. MAPI Routing Client
  2.  
  3.  
  4. The Route.Cli sample illustrates two important areas of MAPI:
  5.  
  6. 1. How to use specially defined named properties, known as routing property 
  7.    sets, for storing addressing information when sending messages across 
  8.    different messaging systems.
  9.  
  10. 2. How to use basic MAPI facilities, as an e-mail client might.
  11.  
  12. Different messaging systems use different address formats. So when a message
  13. crosses a domain boundary, usually passing through a gateway, the addressing
  14. information needs to be translated from the format used by the original domain
  15. to the format used by the new domain. Almost all gateways do this for the
  16. sender and ordinary message recipients. MAPI defines special mechanism for
  17. preserving the addressing information for users who are not on the message
  18. recipient list. Please see "Sending Messages Between Domains" in the MAPI
  19. Online documentation for more information. This sample uses the mechanism to
  20. route a message to a list of people one after another.
  21.  
  22. The routing client demonstrates the use of routing property sets by
  23. implementing a simple linear route for a message with optional attached
  24. documents. The routing list is stored in the routing property sets, and each
  25. user who receives the message has an opportunity to edit the message and pass
  26. it to the next person in the routing list. Each user may optionally edit the
  27. remainder of the route as well.
  28.  
  29. The sample routing client also serves as a simple e-mail client. Features
  30. include:
  31.  
  32.   - Viewing the contents table of any folder in any message store.
  33.   - Sending or reading any message, using the form registered for it.
  34.   - Forcing new mail to be downloaded to the default message store.
  35.   - Deleting mail.
  36.  
  37. Performance
  38.  
  39. Recently the routing code of the sample has been revised with
  40. performance considerations in mind. A few simple changes have
  41. significantly improved response time.  If you looked at the source of
  42. the sample before, you might find it very beneficial to compare the old
  43. and new versions.  Here is the list of things that have been changed:
  44.  
  45. 1. Instead of calling GetIDsFromNames and GetProps once for every
  46. recipient on the routing list, now these functions are called only
  47. once for all the recipients on the routing list.
  48.  
  49. 2. Several calls to GetProps have been combined into one. (For example,
  50. function HasAttachment which did a separate GetProps does not exist
  51. any more. Instead the call has been combined with GetProps in function
  52. RT_OnInitDialog).
  53.  
  54. 3. Now the sample uses the MAPI_DEFERRED_ERRORS flag wherever possible.
  55. (In calls such as OpenEntry, OpenProperty, CreateMessage, etc.) In
  56. general, if a method accepts this flag, you should use it unless there
  57. is a very good reason not to.
  58.  
  59. These simple tips can significantly boost performance of any MAPI
  60. application.
  61.  
  62.