If the result is what is called an Exchange distinguished name (X400 style)
you have to use a MAPI property that isn't exposed to the Outlook object
model to retrieve the equivalent SMTP type address. You have to use Extended
MAPI, CDO 1.21 or Redemption (
www.dimastr.com/redemption) to get at that
property.
Here's an example of doing that using Redemption code:
Default SMTP address of an Exchange user:
dim utils, MailItem, PrSMTPAddress, SMTPAddress
set utils = CreateObject("Redemption.MAPIUtils")
set MailItem = Outlook.Session.GetDefaultFolder(6).Items(1) 'Get the
first item in the inbox, can be any other mail item
PrSMTPAddress= &H39FE001E
'Get SMTP address of the first recipient. It is assumed that the
recipient is an Exchange Server user.
SMTPAddress =
utils.HrGetOneProp(MailItem.Recipients(1).AddressEntry.MAPIOBJECT,
PrSMTPAddress)
MsgBox SMTPAddress
--
Ken Slovak
[MVP - Outlook]
http://www.slovaktech.com
Author: Absolute Beginner's Guide to Microsoft Office Outlook 2003
Reminder Manager, Extended Reminders, Attachment Options
http://www.slovaktech.com/products.htm
Partager