M
Mark VII
Greetings --
I'm working on some email automation via VBA. (For a variety of reasons, I
can't use the system address book, and keep the email addresses in an Access
table. Long story.) I want to be able to protect against a fat-fingered
address in the table.
What I have so far creates the MailItem, adds a recipient, then uses the
Resolve method to make sure the email address exists in our system. (We have
Exchange servers.)
What is happening is the resolved property is returning True, even if the
address is invalid.
Here's a code extract:
Dim appOutlook As Outlook.Application
Dim nsNameSpace As Outlook.Namespace
Dim miMailItem As Outlook.MailItem
Dim rcpRecipient As Outlook.Recipient
Set appOutlook = CreateObject("Outlook.application")
Set nsNameSpace = appOutlook.GetNamespace("MAPI")
Set miMailItem = appOutlook.CreateItem(olMailItem)
miMailItem.Subject = "some text"
Set rcpRecipient = miMailItem.Recipients.Add("(e-mail address removed)")
If rcpRecipient.Resolved = True Then
'* OK, continue
Else
'* issue error message and abort
End If
The Resolved property always returns True, I can't trap for an invalid email
address. Should I be doing something differently to detect an invalid
address?
Thanks,
Mark
I'm working on some email automation via VBA. (For a variety of reasons, I
can't use the system address book, and keep the email addresses in an Access
table. Long story.) I want to be able to protect against a fat-fingered
address in the table.
What I have so far creates the MailItem, adds a recipient, then uses the
Resolve method to make sure the email address exists in our system. (We have
Exchange servers.)
What is happening is the resolved property is returning True, even if the
address is invalid.
Here's a code extract:
Dim appOutlook As Outlook.Application
Dim nsNameSpace As Outlook.Namespace
Dim miMailItem As Outlook.MailItem
Dim rcpRecipient As Outlook.Recipient
Set appOutlook = CreateObject("Outlook.application")
Set nsNameSpace = appOutlook.GetNamespace("MAPI")
Set miMailItem = appOutlook.CreateItem(olMailItem)
miMailItem.Subject = "some text"
Set rcpRecipient = miMailItem.Recipients.Add("(e-mail address removed)")
If rcpRecipient.Resolved = True Then
'* OK, continue
Else
'* issue error message and abort
End If
The Resolved property always returns True, I can't trap for an invalid email
address. Should I be doing something differently to detect an invalid
address?
Thanks,
Mark