D
derek mang
I am using Windows XP pro with Office 2003. Within Outlook, I have a
series of macros to facilitate handling of specific emails.
Within this, one function is to extract the sender's email address using
CDO - which fails (Code below). I use the same .otm file on a different
machine wito Windows XP pro and Outlook 2002, and it's perfect.
CDO 1.21 is referenced.
Any thoughts would be appreciated
Regards
Derek
Option Explicit
Public G_objSession As MAPI.Session
Sub SetCDOSession()
' start CDO session
Set G_objSession = CreateObject("MAPI.Session")
G_objSession.Logon , , False, False
End Sub
Sub UnsetCDOSession()
' start CDO session
Set G_objSession = Nothing
End Sub
Function GetFromAddress(objMsg As MailItem) As String
Dim strEntryID As String
Dim strStoreID As String
Dim objCDOItem As MAPI.Message
' get EntryID and StoreID for message
strEntryID = objMsg.EntryID
strStoreID = objMsg.Parent.StoreID
If G_objSession Is Nothing Then
' Set the CDO Session up as it doesn't exist.
Call SetCDOSession
End If
' pass item to CDO and get sender address
On Error Resume Next
Set objCDOItem = G_objSession.GetMessage(strEntryID, strStoreID)
GetFromAddress = objCDOItem.Sender.Address
Set objCDOItem = Nothing
End Function
series of macros to facilitate handling of specific emails.
Within this, one function is to extract the sender's email address using
CDO - which fails (Code below). I use the same .otm file on a different
machine wito Windows XP pro and Outlook 2002, and it's perfect.
CDO 1.21 is referenced.
Any thoughts would be appreciated
Regards
Derek
Option Explicit
Public G_objSession As MAPI.Session
Sub SetCDOSession()
' start CDO session
Set G_objSession = CreateObject("MAPI.Session")
G_objSession.Logon , , False, False
End Sub
Sub UnsetCDOSession()
' start CDO session
Set G_objSession = Nothing
End Sub
Function GetFromAddress(objMsg As MailItem) As String
Dim strEntryID As String
Dim strStoreID As String
Dim objCDOItem As MAPI.Message
' get EntryID and StoreID for message
strEntryID = objMsg.EntryID
strStoreID = objMsg.Parent.StoreID
If G_objSession Is Nothing Then
' Set the CDO Session up as it doesn't exist.
Call SetCDOSession
End If
' pass item to CDO and get sender address
On Error Resume Next
Set objCDOItem = G_objSession.GetMessage(strEntryID, strStoreID)
GetFromAddress = objCDOItem.Sender.Address
Set objCDOItem = Nothing
End Function