将交换电子邮件转换为smtp电子邮件

时间:2012-11-22 16:18:25

标签: vba outlook-2003

是否可以将交换电子邮件转换为smtp电子邮件。我可以在谷歌搜索时找到一些帮助,但由于我使用旧版本(outlook 2003),解决方案不可行。

当我检查MailItem.SenderEmailAddress属性时,属性中的值看起来像这种格式

/O=MYCOMPANY/OU=COUNTRY/CN=RECIPIENTS/CN=joseph

我想将此转换为应该是

的smtp电子邮件
joseph@mail.com

3 个答案:

答案 0 :(得分:1)

我正在以这种方式使用我的.Net:

service.ResolveName(emailAddress.Address).First().Mailbox.Address
// emailAddress.Address = "/o=ExchangeLabs/ou=Exchange(abc)/cn=Recipients/cn=xyz"
// => abc@xyz.com

ResolveName方法参考:https://msdn.microsoft.com/en-us/library/dd635548(v=exchg.80).aspx

我使用的是.Net而不是VBA。然而,希望将激发您的VBA代码。

答案 1 :(得分:0)

MailItem.Sender.GetExchangeUser().PrimarySmtpAddress

我知道这适用于Outlook 2010,但您的里程可能会因2003年而异。

答案 2 :(得分:0)

我在这个链接找到了解决方案。

http://www.experts-exchange.com/Microsoft/Development/MS_Access/Q_26868648.html

这是一个简单而有效的解决方案。