c# - 从 C# 程序读取 outlook 消息时如何避免 outlook 安全警报

标签 c# outlook

我需要通过 C# 程序读取 Outlook 收件箱中新邮件的主题、发件人地址和邮件正文。但我收到安全警报“一个程序正在尝试访问您存储在 Outlook 中的电子邮件地址。你想允许这个吗?

通过一些谷歌搜索,我发现很少有第三方 COM 库可以避免这种情况。但我正在寻找不需要任何第三方 COM 库的解决方案。

最佳答案

我在访问 Outlook 邮件项目的发件人电子邮件地址时遇到了同样的问题。为避免“安全警报”,不要创建新的应用程序对象,而是使用 Globals.ThisAddIn.Application 来创建新的邮件项。

string GetSenderEmail(Outlook.MailItem item)
    {
        string emailAddress = "";
        if (item.SenderEmailType == "EX")
        {
            Outlook.MailItem tempItem = (Outlook.MailItem)Globals.ThisAddIn.Application.CreateItem(Outlook.OlItemType.olMailItem);
            tempItem.To = item.SenderEmailAddress;
            emailAddress = tempItem.Recipients[1].AddressEntry.GetExchangeUser().PrimarySmtpAddress.Trim();

        }
        else
        {
            emailAddress = item.SenderEmailAddress.Trim();

        }

        return emailAddress;
    }

关于c# - 从 C# 程序读取 outlook 消息时如何避免 outlook 安全警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/235231/

相关文章:

excel - Outlook Excel 比较两个已关闭工作簿中的数据

outlook - HTML 签名呈现方式不同

html - 额外填充展望 2013

excel - 发送的邮件项目无效使用

c# - 在 GridView 中添加新行时控制类型 FileUpload 时出错

c# - 获取 Entity Framework 连接字符串

c# - Socket.EndRead 0字节意味着断开连接?

c# Outlook 插件强行将光标移动到电子邮件正文的末尾

c# - Foreach 一个列表或者哪一个是正确的方法?

C#引用麻烦