The Update method saves the message in the MAPI system.
objMessage.Update( [makePermanent] [, refreshObject] )
Changes to a Message object are not permanently saved in the MAPI system until you either call the Update method with the makePermanent parameter set to True or call the Send method.
For improved performance, CDO caches property changes in private storage and updates either the object or the underlying persistent storage only when you explicitly request such an update. For efficiency, you should make only one call to Update with its makePermanent parameter set to True.
The makePermanent and refreshObject parameters combine to cause the following changes:
refreshObject = True | refreshObject = False | |
---|---|---|
makePermanent = True | Commit all changes, flush the cache, and reload the cache from the message store. | Commit all changes and flush the cache (default combination). |
makePermanent = False | Flush the cache and reload the cache from the message store. | Flush the cache. |
Call Update(False, True) to flush the cache and then reload the values from the message store.
This code fragment changes the subject of the first message in the Inbox:
Set objMessage = objSession.Inbox.GetFirst
' ... verify message
objMessage.Subject = "This is the new subject"
objMessage.Update ' commit changes to MAPI system
To add a new Message object, use the Messages collection's Add method followed by the message's Update method. This code fragment saves a new message in the Outbox:
Dim objMessage As Message ' Message object
'
Set objMessage = objSession.Outbox.Messages.Add
objMessage.Subject = "Microsoft CDO Library"
objMessage.Text = "The new version is now available."
objMessage.Update makePermanent:=True ' redundant parameter (default)