OUTLOOK As Sent -and- MAPI Update Delay on Sent

Discussion forum for Enterprise Edition.
Post Reply
adz
Posts: 13
Joined: Wed Jul 16, 2014 5:20 am

OUTLOOK As Sent -and- MAPI Update Delay on Sent

Post by adz » Thu Mar 05, 2020 4:04 am

Problem 1:

With Outlook, the messages in "Sent Items" are not those actually "as sent". For example if I add a footer using MTA or headers, the original message is stored in "Outlook Sent Items" and not the "as sent - to be received" message.

If any one has any ideas how to get the "as sent" message quickly back into Outlook, it would be much appreciated. Do I have to route this back through MailEnable by sending the message back to the sender with say an "AS SENT header" or is there an better way. I don't really want to follow all the MAILENABLE mailbox routes ... just "replace the sent message" with the "as sent to recipient message" (eg with the footer) as quickly as possible using MAPI sync.

Problem 2:

A related issues that I do battle with is the delay with the MAPI sync updating sent messages in the sent folder. E.g. the Outlook VBA get headers wont work on a recently sent item. I have to forcibly refresh the Sent Items folder which takes too long.

Any assistance would be much appreciated.

Function GetInetHeadersX(objItem) '

vs_result = ""

If 1 = 1 Then
MAPI_NO_CACHE = &H209
MAPI_BEST_ACCESS = &H10
Dim session As Redemption.RDOSession
Set session = CreateObject("Redemption.RDOSession")
session.MAPIOBJECT = Application.session.MAPIOBJECT
Set mail = session.GetMessageFromID(objItem.EntryID, , MAPI_NO_CACHE + MAPI_BEST_ACCESS)
vs_result = mail.Fields("http://schemas.microsoft.com/mapi/proptag/0x1035001F")
vs_result = mail.Fields("http://schemas.microsoft.com/mapi/proptag/0x007D001E")
'MsgBox (vs_result)
End If

Const PrHeaders = &H7D001E 'PR_TRANSPORT_MESSAGE_HEADERS

If vs_result = "" Then
' Get selected Message ID
id1 = objItem.EntryID
id2 = objItem.Parent.StoreID

Set objMessage = CreateObject("Redemption.SafeMailItem") 'To avoid the warning when accessing send address
objMessage.Item = objItem

vs_result = GetInetHeaders(objMessage)
End If

GetInetHeadersX = vs_result
'MsgBox (vs_result)
End Function

Post Reply