【问题标题】:How to retrieve the sender smtp email address with Outlook interop?如何使用 Outlook 互操作检索发件人 smtp 电子邮件地址?
【发布时间】:2018-02-13 05:30:39
【问题描述】:

我正在使用 c# 和 Microsoft Outlook 互操作 Outlook dll 从 Outlook (Exchange) 读取和检索邮件。

我在解析发件人电子邮件地址时遇到问题,因为代码返回的是 Exchange 地址,而不是普通的电子邮件 ID。我要检索的内容类似于username@abc.com,但我的代码输出是电子邮件的 Exchange 地址:

(/O=EXCHANGELABS/OU=EXCHANGE 管理组 (xxxxxxxxxxx)/CN=收件人/CN=XXXXXXX32AD740E69184DC03B2A406F4-XXX XXX)

我尝试过的代码:

emailItem.Sender

emailItem.SenderEmailAddress

如何将 Exchange 地址转换为 smtp 地址或如何仅检索 smtp 地址?

【问题讨论】:

    标签: c# .net email outlook


    【解决方案1】:

    这段代码应该可以做到:

    string senderEmailAddress;
    
    if (mi.SenderEmailType == "EX")
    {
        senderEmailAddress = emailItem.Sender.GetExchangeUser().PrimarySmtpAddress;                    
    }
    else
    {
        senderEmailAddress = emailItem.SenderEmailAddress;
    }
    

    地点:

    这应该适用于 Outlook 2010 及更高版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-02
      • 1970-01-01
      • 1970-01-01
      • 2021-03-14
      • 2015-02-18
      • 2011-04-25
      • 2020-01-21
      • 2023-03-13
      相关资源
      最近更新 更多